2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩49頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、DB2開(kāi)發(fā)基礎(chǔ)介紹,議程,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,訪(fǎng)問(wèn)工具,db2命令行處理器(db2clp)控制中心命令編輯器復(fù)制中心配置助手信息中心第三方的訪(fǎng)問(wèn)工具,db2命令行處理器(db2clp),有2種運(yùn)行方式:(1)類(lèi)似于操作系統(tǒng)命令,如下圖:,(2)在db2提示符下執(zhí)行SQ

2、L命令,db2命令行處理器(db2clp) - 在db2提示符下執(zhí)行SQL命令,(1)首先在操作系統(tǒng)提示符下執(zhí)行db2命令,會(huì)出現(xiàn)db2提示符db2 =>(2)輸入你想執(zhí)行的任何SQL語(yǔ)句,控制中心,初學(xué)者常用的工具,可以通過(guò)show sql按鈕告訴你db2語(yǔ)句的語(yǔ)法功能強(qiáng)大的管理工具修改數(shù)據(jù)庫(kù)參數(shù)創(chuàng)建數(shù)據(jù)庫(kù)及存放其中的對(duì)象管理分區(qū)的策略創(chuàng)建聯(lián)邦的數(shù)據(jù)庫(kù)對(duì)象備份恢復(fù),控制中心界面,命令編輯器,執(zhí)行sql命令,察看執(zhí)行

3、計(jì)劃,復(fù)制中心,配置SQL復(fù)制,異構(gòu)數(shù)據(jù)源之間的復(fù)制Q復(fù)制,通過(guò)Websphere MQ隊(duì)列進(jìn)行復(fù)制復(fù)制進(jìn)程的啟動(dòng)和停止復(fù)制情況的監(jiān)控,配置和管理復(fù)制的圖形化界面,復(fù)制中心界面,配置助手 – 用于配置和數(shù)據(jù)庫(kù)的連接及ODBC數(shù)據(jù)源,信息中心 – db2的聯(lián)機(jī)文檔,訪(fǎng)問(wèn)db2的第三方的工具,Quest for db2Toad for db2PowerBuilder及其他免費(fèi)的一些工具spotslight,議程,訪(fǎng)問(wèn)工具客戶(hù)端

4、和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,,客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式,Native的連接方式 (1)TCP/IP連接;(2)共享內(nèi)存連接JDBCODBC,連接方式常用的有3種:,Native的連接方式 - TCP/IP連接,通過(guò)TCP/IP協(xié)議進(jìn)行通訊,需要為數(shù)據(jù)庫(kù)實(shí)例指定監(jiān)聽(tīng)端口,并且需要通過(guò)db2

5、set設(shè)置通訊的協(xié)議中包括TCP/IP協(xié)議。 指定監(jiān)聽(tīng)端口的方式如下: db2 update dbm cfg using svcename 50000 設(shè)置通訊協(xié)議的方式如下: db2set DB2COMM=tcpip 在完成上述設(shè)置并重啟數(shù)據(jù)庫(kù)實(shí)例之后,數(shù)據(jù)庫(kù)進(jìn)程中將包含一個(gè)監(jiān)聽(tīng)客戶(hù)端請(qǐng)求的進(jìn)程; tcp/ip連接需要安裝db2客戶(hù)端,如何配置TCP/IP的連接方式,1

6、.命令方式: 需要的步驟有2個(gè):(1)編目數(shù)據(jù)庫(kù)服務(wù)器;通俗的講目的是告訴客戶(hù)端數(shù)據(jù)庫(kù)服務(wù)器運(yùn)行在哪臺(tái)機(jī)器上?監(jiān)聽(tīng)端口是多少? db2 catalog tcpip node #node# remote #hostname# server #port#(2)編目數(shù)據(jù)庫(kù) DB2是多庫(kù)的結(jié)構(gòu),因此需要告訴客戶(hù)端需要訪(fǎng)問(wèn)的目的數(shù)據(jù)庫(kù) db2 catalog db #database# as #a

7、lias# at node #node name#,2.通過(guò)db2客戶(hù)端的配置助手進(jìn)行配置,Native的連接方式 – 共享內(nèi)存連接,共享內(nèi)存連接適用于應(yīng)用程序和數(shù)據(jù)庫(kù)在同一臺(tái)機(jī)器上的情景。,JDBC連接方式,Websphere等應(yīng)用服務(wù)器使用這種連接方式,在Websphere的管理界面中進(jìn)行配置。 不需要安裝db2客戶(hù)端。,ODBC連接方式,通常在使用第三方的開(kāi)發(fā)工具時(shí)使用這種連接方式,在Windows平臺(tái)上其配

8、置方式是通過(guò)DB2客戶(hù)端的配置助手來(lái)進(jìn)行。,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,議程,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,議程,DB2中獨(dú)有的一些SQL語(yǔ)句

9、語(yǔ)法,創(chuàng)建表時(shí)指明索引所在的表空間Case語(yǔ)句序列的使用全局臨時(shí)表的使用,創(chuàng)建表時(shí)指明索引所在的表空間,create table db2admin.salesdetail (product_id integer not null, region_id integer not null, time_id integer not null, amount

10、 integer not null, turnover decimal(10, 0) ) in userspace1 index in idxspace1;,Case語(yǔ)句,EXEC SQL select sum(case when B.srvknd_id=:gsm_srvknd_id then charge else 0 end), sum(case when B.

11、srvknd_id=:cdma_srvknd_id then charge else 0 end) into :gsm_charge_stop_before_month2, :cdma_charge_stop_before_month2 from session.tmp_charge

12、_user A ,session.tmp_userid B where A.userid=B.userid;,序列的使用,創(chuàng)建序列:CREATE SEQUENCE ORG_SEQ #序列的名稱(chēng)START WITH 1 #從1開(kāi)始INCREMENT BY 1

13、 #每次增加1個(gè)NO MAXVALUE #沒(méi)有最大值NO CYCLE #不循環(huán)使用CACHE 24 #在內(nèi)存中緩存24個(gè)值,目的是加快讀取訪(fǎng)問(wèn)序列的屬性可以通過(guò)alter sequen

14、ce在后期修改。,操作序列:,獲得序列的當(dāng)前值:insert into customer_orders_t values ( next value for orders_seq, current date, :cid, :pid, :qty, :cost, 'pending')獲得序列的下一個(gè)值:insert into customer_orders_t values (previo

15、us value for orders_seq, current date, :cid, :pid, :qty, :cost, 'pending'),全局臨時(shí)表的使用,定義EXEC SQL declare global temporary table tmp_userid (userid decimal(10,0) not null ,

16、 srvknd_id smallint) with replace on commit preserve rows not logged in ts_usertemp; 其中ts_usertemp為用戶(hù)臨時(shí)表空間,需要系統(tǒng)管理員創(chuàng)建。操作 EXEC SQL insert into session.tmp_userid

17、 select userid,:cdma_srvknd_id from fo_cuserinfo where stopday_id > :month1 * 100 and stopday_id < :month1 * 100 + 32;當(dāng)應(yīng)

18、用程序運(yùn)行結(jié)束之后,臨時(shí)表自動(dòng)刪除。,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,議程,存儲(chǔ)過(guò)程的創(chuàng)建方式有兩種:,在文本編輯器中編寫(xiě),通過(guò)命令行創(chuàng)建通過(guò)db2客戶(hù)端的開(kāi)發(fā)者工作臺(tái)創(chuàng)建,在命令行中創(chuàng)建存貯過(guò)程舉例,(1)將下列存儲(chǔ)過(guò)程的定義存放在一個(gè)文本文件中,如:sp.sql. drop proce

19、dure sq.p_sq_othercomputemeasure@create procedure sq.p_sq_othercomputemeasure(in in_t_curmonth numeric(6))language sqlbeginif in_t_curmonth is null then values ( year(current date )*100 + month(current date)) int

20、o in_t_curmonth;end if;delete from sq.st1043 where statdate=in_t_curmonth and zbkndcode='21' ;insert into sq.st1043 (statcyc,statdate,zbvalue,zbkndcode) call sq_setstatstatus(1043,in_t_curmonth,'y');

21、commit;end @ -- @為語(yǔ)句結(jié)束符(2)在db2命令行中通過(guò)下面的方式創(chuàng)建存儲(chǔ)過(guò)程 db2 –td@ -vf sp.sql td選項(xiàng)用來(lái)定義sql語(yǔ)句的結(jié)束符號(hào); v選項(xiàng)用來(lái)確定是否在屏幕上顯示執(zhí)行的sql語(yǔ)句; f選項(xiàng)用來(lái)指定sql命令所存放的文件,通過(guò)db2客戶(hù)端的開(kāi)發(fā)者工作臺(tái)創(chuàng)建,使開(kāi)發(fā)者專(zhuān)注于存儲(chǔ)過(guò)程的過(guò)程體,不需要關(guān)注如何

22、創(chuàng)建以及存儲(chǔ)過(guò)程的其他一些特性可以進(jìn)行調(diào)試,察看執(zhí)行過(guò)程的錯(cuò)誤代碼和變量值采用Eclipse技術(shù),開(kāi)發(fā)者工作臺(tái)的主界面,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,議程,在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程,新建項(xiàng)目選擇數(shù)據(jù)庫(kù)連接新建存儲(chǔ)過(guò)程選擇存儲(chǔ)過(guò)程是否返回結(jié)果集定義SQL錯(cuò)誤的意

23、外處理程序編寫(xiě)存儲(chǔ)過(guò)程體發(fā)布存儲(chǔ)過(guò)程到數(shù)據(jù)庫(kù)服務(wù)器,步驟:,新建項(xiàng)目,選擇數(shù)據(jù)庫(kù)連接,新建存儲(chǔ)過(guò)程,選擇存儲(chǔ)過(guò)程是否返回結(jié)果集,定義SQL錯(cuò)誤的意外處理程序,編寫(xiě)存儲(chǔ)過(guò)程體,發(fā)布存儲(chǔ)過(guò)程到數(shù)據(jù)庫(kù)服務(wù)器,訪(fǎng)問(wèn)工具客戶(hù)端和DB2數(shù)據(jù)庫(kù)的連接方式DB2中的數(shù)據(jù)類(lèi)型DB2中獨(dú)有的一些SQL語(yǔ)句語(yǔ)法如何寫(xiě)存儲(chǔ)過(guò)程?在DB2 9版本中如何用開(kāi)發(fā)工作臺(tái)寫(xiě)存儲(chǔ)過(guò)程?如何寫(xiě)觸發(fā)器?,議程,創(chuàng)建觸發(fā)器,create trigger veri

24、fy_credit before insert on orders_t referencing new as n for each row mode db2sql begin atomic declare current_due decimal(10,2) default 0;declare credit_line decimal(10,2); set credit_line = (select credit from c

25、ustomer_t c where c.cust_id=n.cust_id); for ord_cursor as select quantity, price from orders_t ord where ord.cust_id=n.cust_id and status not in ('completed','cancelled') do set current_due

26、 = current_due + (ord_cursor.price * ord_cursor.quantity); end for; if (current_due + n.price * n.quantity) > credit_line then signal sqlstate '80000' ('order exceeds credit line'); end if;

27、 end @,創(chuàng)建觸發(fā)器的方式和通過(guò)命令行方式創(chuàng)建存儲(chǔ)過(guò)程的方法相同,Insert事件的觸發(fā)器,Update事件的觸發(fā)器,create trigger verify_state before update on orders_treferencing old as o new as n for each row mode db2sql begin atomic if o.status='pending' an

28、d n.status in ('shipped','cancelled') then -- valid state elseif o.status='shipped' and n.status ='delivered' then -- valid state elseif o.status='delivered' and n.statu

29、s = 'completed' then -- valid state else signal sqlstate '80001' ('invalid state transition'); end if; end @,Delete事件的觸發(fā)器,create trigger log_deleteafter delete on orders_treferencing old a

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論