久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

經(jīng)驗(yàn)總結(jié):DB2數(shù)據(jù)庫功能及性能使用方法

瀏覽:2日期:2023-11-09 15:16:14
◆1.安裝DB2后可以通過命令窗口這樣的命令行方式或控制中心這樣的圖形界面方式來操作,而如果你的數(shù)據(jù)庫服務(wù)端不在本機(jī),則還需要在“客戶機(jī)配置輔助程序”中做一個(gè)客戶端連接的配置。

◆2.控制中心中無法增刪改數(shù)據(jù),只能編寫sql語句來實(shí)現(xiàn)而quest提供的工具雖然能增加數(shù)據(jù),但居然無法用復(fù)制、粘貼和Tab鍵,必須逐個(gè)輸入,然后用鼠標(biāo)點(diǎn)擊切換現(xiàn)存數(shù)據(jù)看來可以在單元格中編輯修改,但實(shí)際卻無法commit,呵呵,還是老老實(shí)實(shí)寫update語句,至于刪除數(shù)據(jù),更是非寫delete語句不可。不過可以用pb以單元格方式編輯數(shù)據(jù),相應(yīng)的一個(gè)缺點(diǎn)是編輯數(shù)據(jù)的按鈕和刪除表的按鈕太近,萬一點(diǎn)錯(cuò)了刪除表的按鈕,pb可是不作提示就把表給刪了的,faint

◆3.DB2的視圖里不能直接用order by語句,必須這樣寫 select × from(select a,b,c from table1 order by a)as tab

這種寫法的前提是你已經(jīng)打過補(bǔ)丁了

◆4.存儲(chǔ)過程的問題:

DB2提供ltrim函數(shù)和rtrim函數(shù),但偏偏不提供trim函數(shù),如果你希望去除字符兩端的空格,對(duì)不起,必須用ltrim(rtrim()) 的方式調(diào)用insert 語句里面居然不能用表達(dá)式賦值,必須把值先賦給一個(gè)變量調(diào)用其他存儲(chǔ)過程時(shí)竟然不能用常量做參數(shù),必須把這個(gè)常量的值賦給一個(gè)變量,再以這個(gè)變量為參數(shù)

select * from table fetch first n rows only 語句居然在存儲(chǔ)過程里不可用

◆5.存儲(chǔ)過程里可以使用動(dòng)態(tài)sql,但函數(shù)里卻不可以使用

◆6. 遇到commit或rollback時(shí)自動(dòng)關(guān)閉游標(biāo),所以需要慎重使用單獨(dú)提交。

proc builder老是在調(diào)試中內(nèi)存不足,屏幕花掉。而如果斷點(diǎn)調(diào)試時(shí)暫停不進(jìn)行下去的時(shí)間稍微長(zhǎng)一點(diǎn)就會(huì)提示超時(shí),受不了。

◆7.開發(fā)中遇到的一個(gè)問題

◆在使用日期變量+1 MONTHS OR 日期變量-1 MONTHS 的方式取日期時(shí),比如日期變量值為 2004-02-29時(shí),存儲(chǔ)過程里將日期變量+1 MONTHS 賦值給另一

日期變量時(shí)會(huì)出錯(cuò)。相應(yīng)SQLSTATE為01506(db2 ? 01506): 對(duì) DATE 或TIMESTAMP值進(jìn)行了調(diào)整,以校正算術(shù)運(yùn)算得出的無效日期。

◆如果要獲取的只是下一月份,可采用的替代方法是獲取當(dāng)前日期所在月份的第一天作為基準(zhǔn)后+1 MONTHS OR -1 MONTHS

◆8.存儲(chǔ)過程的經(jīng)驗(yàn)

搞了半天搞不定,一查原來的文檔才了,原來tmd該死的DB2的存儲(chǔ)過程,是轉(zhuǎn)換為C后,進(jìn)行編譯的。因此在數(shù)據(jù)庫服務(wù)器上要安裝一個(gè)C編譯器才能完成存儲(chǔ)過程的編譯。并且需要使用DB2SET命令,設(shè)置DB2_SQLROUTINE_COMPILER_PATH指向C編譯器的安裝路徑。如:db2set

DB2_SQLROUTINE_COMPILER_PATH=E:ProgramFilesMicrosoftVisualStudioVC98Binvcvars32.bat

◆9.對(duì)變量的賦值不能用select ..into ..方式而要用set v=(select ..)的方式,代碼示例如下。

drop function SXFM.ISORDERSUBMITDATE;

CREATE FUNCTION SXFM.ISORDERSUBMITDATE(IN_ROW_ID DECIMAL(16,0))

RETURNS DATE

LANGUAGE SQL

BEGIN ATOMIC

DECLARE V_SUBMIT_DATE DATE;

DECLARE V_SELL_ID DECIMAL(16, 0);

DECLARE V_BUY_ID DECIMAL(16, 0);

set V_SELL_ID = (SELECT COALESCE(RECEIVE_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);

set V_BUY_ID = (SELECT COALESCE(PAY_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);

set V_SUBMIT_DATE = (SELECT DATE(MAX(A.SUBMIT_DATE)) FROM AM_AUDIT_QUEUE A,SM_USER B,SM_USER C

WHERE A.TABLE_CODE='IS_ORDER' AND A.TABLE_ROW_ID=IN_ROW_ID

AND A.AUDIT_EMP_ID=C.ROW_ID AND C.BRANCH_ID=V_BUY_ID --審核方為付款方

AND A.SUBMIT_EMP_ID=B.ROW_ID AND B.BRANCH_ID=V_SELL_ID); --提交方為收款方

RETURN V_SUBMIT_DATE;

END;

#SYNC 10;

◆10.DB2的游標(biāo)打開后遇到commit和rollback默認(rèn)是會(huì)關(guān)閉的。保持游標(biāo)打開的方法是在定義游標(biāo)時(shí)加上with hold選項(xiàng)

◆11.F:導(dǎo)出某張表的數(shù)據(jù),且該表包含long varchar型數(shù)據(jù),該如何操作Q:Export:db2 connect to [dbname] user [user] using [password]db2move [dbname] export -tn [tablename] -u [user] -p[password] (單表)db2move [dbname] export -tn [tablename1,tablename2,...] -u [user] -p [password] (多表)Import:db2move [dbname] import

標(biāo)簽: DB2 數(shù)據(jù)庫
主站蜘蛛池模板: 日韩欧美~中文字幕 | 日日夜夜一区二区 | 九色porny国模私拍av | 91影院在线观看 | 日韩欧美综合 | 日韩国产| 亚洲国产精品久久 | 欧美xxxx色视频在线观看免费 | 欧美一级片在线观看 | 91一区| 日本精品视频在线播放 | 99riav国产一区二区三区 | 欧美天堂| 韩国三级中文字幕hd久久精品 | 国产一区不卡 | 国产精品一区二区三区四区 | 亚洲 欧美 日韩在线 | 成人av高清在线观看 | 国产v日产∨综合v精品视频 | 欧美日本精品 | 免费福利网站 | 伊人一二三区 | 久久免费视频网 | 国产69精品久久久久观看黑料 | 日本三级电影网站 | 伊人久久国产 | 午夜免费观看网站 | 日本在线观看一区二区 | 九九在线视频 | 欧美成人综合在线 | 中文精品在线 | 成人久久久 | 亚洲精品a区 | 日韩素人一区二区三区 | 九九热这里只有精品6 | 青青草久久| 国产乱码精品1区2区3区 | 国产精品69毛片高清亚洲 | 日本一区二区三区免费观看 | 成人一区在线观看 | 怡红院免费在线视频 |