首頁 - 網(wǎng)校 - 萬題庫 - 直播 - 雄鷹網(wǎng)校 - 團(tuán)購 - 書城 - 模考 - 學(xué)習(xí)通 - 導(dǎo)航 -
首頁網(wǎng)校萬題庫直播雄鷹網(wǎng)校團(tuán)購書城模考論壇實(shí)用文檔作文大全寶寶起名
2015中考
法律碩士
2015高考
MBA考試
2015考研
MPA考試
在職研
中科院
考研培訓(xùn)
專升本
自學(xué)考試 成人高考
四 六 級(jí)
GRE考試
攻碩英語
零起點(diǎn)日語
職稱英語
口譯筆譯
申碩英語
零起點(diǎn)韓語
商務(wù)英語
日語等級(jí)
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點(diǎn)英語
托?荚
托業(yè)考試
零起點(diǎn)法語
雅思考試
成人英語三級(jí)
零起點(diǎn)德語
等級(jí)考試
華為認(rèn)證
水平考試
Java認(rèn)證
職稱計(jì)算機(jī) 微軟認(rèn)證 思科認(rèn)證 Oracle認(rèn)證 Linux認(rèn)證
公 務(wù) 員
導(dǎo)游考試
物 流 師
出版資格
單 證 員
報(bào) 關(guān) 員
外 銷 員
價(jià)格鑒證
網(wǎng)絡(luò)編輯
駕 駛 員
報(bào)檢員
法律顧問
管理咨詢
企業(yè)培訓(xùn)
社會(huì)工作者
銀行從業(yè)
教師資格
營養(yǎng)師
保險(xiǎn)從業(yè)
普 通 話
證券從業(yè)
跟 單 員
秘書資格
電子商務(wù)
期貨考試
國際商務(wù)
心理咨詢
營 銷 師
司法考試
國際貨運(yùn)代理人
人力資源管理師
廣告師職業(yè)水平
衛(wèi)生資格 執(zhí)業(yè)醫(yī)師 執(zhí)業(yè)藥師 執(zhí)業(yè)護(hù)士
會(huì)計(jì)從業(yè)資格
基金從業(yè)資格
統(tǒng)計(jì)從業(yè)資格
經(jīng)濟(jì)師
精算師
統(tǒng)計(jì)師
會(huì)計(jì)職稱
法律顧問
ACCA考試
初級(jí)會(huì)計(jì)職稱
資產(chǎn)評(píng)估師
高級(jí)經(jīng)濟(jì)師
注冊(cè)會(huì)計(jì)師
高級(jí)會(huì)計(jì)師
美國注冊(cè)會(huì)計(jì)師
審計(jì)師考試
國際內(nèi)審師
注冊(cè)稅務(wù)師
理財(cái)規(guī)劃師
一級(jí)建造師
安全工程師
設(shè)備監(jiān)理師
公路監(jiān)理師
公路造價(jià)師
二級(jí)建造師
招標(biāo)師考試
物業(yè)管理師
電氣工程師
建筑師考試
造價(jià)工程師
注冊(cè)測繪師
質(zhì)量工程師
巖土工程師
注冊(cè)給排水
造價(jià)員考試
注冊(cè)計(jì)量師
環(huán)保工程師
化工工程師
暖通工程師
咨詢工程師
結(jié)構(gòu)工程師
城市規(guī)劃師
材料員考試
消防工程師
監(jiān)理工程師
房地產(chǎn)估價(jià)
土地估價(jià)師
安全評(píng)價(jià)師
房地產(chǎn)經(jīng)紀(jì)人
投資項(xiàng)目管理師
環(huán)境影響評(píng)價(jià)師
土地登記代理人
寶寶起名
繽紛校園
實(shí)用文檔
入黨申請(qǐng)
英語學(xué)習(xí)
思想?yún)R報(bào)
作文大全
工作總結(jié)
求職招聘 論文下載 直播課堂

2015計(jì)算機(jī)等級(jí)考試四級(jí)數(shù)據(jù)庫工程師復(fù)習(xí)(13)

考試吧整理了“2015計(jì)算機(jī)等級(jí)考試四級(jí)數(shù)據(jù)庫工程師復(fù)習(xí)”,提供給各位考生備考,更多考試資料請(qǐng)持續(xù)關(guān)注考試吧計(jì)算機(jī)等級(jí)考試頻道!

  點(diǎn)擊查看:2015計(jì)算機(jī)等級(jí)考試四級(jí)數(shù)據(jù)庫工程師復(fù)習(xí)匯總

  第13章 數(shù)據(jù)庫對(duì)象

  13.1 存儲(chǔ)過程

  13.1.1 存儲(chǔ)過程基本概念

  1、 在關(guān)系數(shù)據(jù)庫中,SQL語言是應(yīng)用程序和數(shù)據(jù)庫管理之間的主要編程接口;

  2、 使用SQL語言編寫代碼時(shí),可用兩種方法存儲(chǔ)和執(zhí)行代碼:

  (1) 在客戶端存儲(chǔ)代碼,并創(chuàng)建向數(shù)據(jù)庫管理系統(tǒng)發(fā)送SQL命令,并處理返回結(jié)果的應(yīng)用程序;

  (2) 將這些發(fā)送的SQL語句存儲(chǔ)在數(shù)據(jù)庫管理系統(tǒng)中,這些存儲(chǔ)在數(shù)據(jù)庫管理系統(tǒng)中的SQL語句就是存儲(chǔ)過程,然后再創(chuàng)建執(zhí)行存儲(chǔ)過程并處理返回結(jié)果的應(yīng)用程序。

  3、 使用存儲(chǔ)過程的好處:

  (1) 模塊化程序設(shè)計(jì):只需創(chuàng)建一次存儲(chǔ)過程并將其存儲(chǔ)在數(shù)據(jù)庫中,以后就可以在應(yīng)用程序中多次調(diào)用存儲(chǔ)過程;

  (2) 提高性能:系統(tǒng)在創(chuàng)建存儲(chǔ)過程時(shí)對(duì)其進(jìn)行分析和優(yōu)化,并在第一次執(zhí)行時(shí)進(jìn)行語法檢查和編譯,編譯好的代碼放入內(nèi)存中,以后再執(zhí)行此存儲(chǔ)過程時(shí),只需直接執(zhí)行內(nèi)存中的代碼,從而提高代碼的執(zhí)行效率;

  (3) 減少網(wǎng)絡(luò)流量:一個(gè)需要數(shù)百行SQL代碼完成的操作現(xiàn)在只需一條執(zhí)行存儲(chǔ)過程的代碼即可實(shí)現(xiàn),因此,不再需要在網(wǎng)絡(luò)中發(fā)送這些多語句;

  (4) 可作為安全機(jī)制使用:

  13.1.2 創(chuàng)建和執(zhí)行存儲(chǔ)過程

  1、 創(chuàng)建存儲(chǔ)過程的SQL語句為:CREATE PROCEDURE,語法格式為:

  CREATE PROCEDURE 存儲(chǔ)過程名

  [{@ 參數(shù)名 數(shù)據(jù)類型}[=default][OUTPUT]

  ][,…n]

  AS

  SQL語句[…n]

  其中:

  (1) default:表示參數(shù)的默認(rèn)值。如果定義了默認(rèn)值,則在執(zhí)行存儲(chǔ)過程時(shí),可以不必指定該參數(shù)的值,默認(rèn)值必須是常量或NULL;

  (2) OUTPUT:表明參數(shù)是輸出參數(shù),該選項(xiàng)的值可以返回給存儲(chǔ)過程的調(diào)用者。

  2、執(zhí)行存儲(chǔ)過程的SQL語句是EXECUTE,語法格式:

  CREATE EXECUTE 存儲(chǔ)過程名 [實(shí)參[,OUTPUT][,…n]]

  1、 執(zhí)行有多個(gè)輸入?yún)?shù)的存儲(chǔ)過程時(shí),參數(shù)的傳遞方式有兩種:

  (1) 按參數(shù)位置傳遞值:指執(zhí)行存儲(chǔ)過程的EXEC語句中的實(shí)參的排列順序必須與定義存儲(chǔ)過程時(shí)定義的參數(shù)的順序一致;

  (2) 按參數(shù)名傳遞值:指執(zhí)行存儲(chǔ)過程的EXEC語句中要指明定義存儲(chǔ)過程時(shí)指定的參數(shù)的名字以及此參數(shù)的值,而不關(guān)心參數(shù)的定義順序。

  2、 注意:

  (1) 在執(zhí)行有輸出參數(shù)的存儲(chǔ)過程時(shí),執(zhí)行語句中的變量名的后邊要加上OUTPUT修飾符;

  (2) 在調(diào)用有輸出參數(shù)的存儲(chǔ)過程時(shí),與輸出參數(shù)對(duì)應(yīng)的是一個(gè)變量,此變量用于保存輸出參數(shù)返回的結(jié)果;

  13.2 用戶自定義函數(shù)

  13.2.1 基本概念

  1、 用戶定義函數(shù)可以擴(kuò)展數(shù)據(jù)操作的功能,它在概念上類似于一般的程序設(shè)計(jì)語言中定義的函數(shù)。

  13.2.2 創(chuàng)建和調(diào)用標(biāo)量函數(shù)

  標(biāo)量函數(shù)—返回單個(gè)數(shù)據(jù)值的函數(shù);

  1、定義標(biāo)量函數(shù)

  CREATE FUNCTION [擁有者名.] 函數(shù)名

  ([{@ 參數(shù)名[AS]標(biāo)量數(shù)據(jù)類型[=default]}[,…n]])

  RETURNS 返回值類型

  [AS]

  BEGIN

  函數(shù)體

  RETURN 標(biāo)量表達(dá)式

  END

  (1) 同存儲(chǔ)過程一樣,函數(shù)的參數(shù)也可以有默認(rèn)值。

  (2) 標(biāo)量表達(dá)式:指定標(biāo)量函數(shù)返回的標(biāo)量值。

  2、 調(diào)用標(biāo)量函數(shù):

  當(dāng)調(diào)用標(biāo)量函數(shù)時(shí),必須提供至少由兩部分組成的名稱:函數(shù)擁有者名和函數(shù)名。可在任何允許出現(xiàn)表達(dá)式的SQL語句中調(diào)用標(biāo)量函數(shù),只要類型一致;

  13.2.3 創(chuàng)建和調(diào)用內(nèi)嵌表值函數(shù)

  1、 創(chuàng)建內(nèi)嵌表值函數(shù),其語法為:

  CREATE FUNCTION [擁有者名.] 函數(shù)名

  ([{@ 參數(shù)名[AS]標(biāo)量數(shù)據(jù)類型[=default]}[,…n]])

  RETURNS 返回變量 TABLE <表定義>

  [AS]

  BEGIN

  函數(shù)體

  RETURN

  END

  <表定義>::=({列定義|表約束}[,…n])

  2、調(diào)用多語句表值函數(shù)

  多語句表值函數(shù)的返回值是一個(gè)表,因此對(duì)多語句表值函數(shù)的使用也是放在SELECT語句的FROM子句中。

  13.3 觸發(fā)器

  13.3.1 觸發(fā)器基本概念

  1、 觸發(fā)器是一種特殊的存儲(chǔ)過程,其特殊性在于它不需要由用戶來調(diào)用,而是當(dāng)用戶對(duì)表中的數(shù)據(jù)進(jìn)行UPDATE、INSERT或DELETE操作時(shí)自動(dòng)觸發(fā)執(zhí)行;

  2、 觸發(fā)器常用于下列場合:

  (1) 完成比CHECK的約束更復(fù)雜的數(shù)據(jù)約束;

  (2) 為保證數(shù)據(jù)庫性能而維護(hù)的非規(guī)范化數(shù)據(jù);

  (3) 實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)規(guī)則,可使業(yè)務(wù)的處理任務(wù)自動(dòng)進(jìn)行。

  13.3.2 創(chuàng)建觸發(fā)器

  1、 創(chuàng)建觸發(fā)器的語句:CREATE TRIGGER,語法為:

  CREATE TRIGGER 觸發(fā)器名稱

  ON {表名| 視圖名}

  [WITH ENCRYPTION]

  {FOR |AFTER|INSTEAD OF}{[INSERT][,][DELETE][,][UPDATE]}

  AS

  [{IF UPDATE(column)…}]

  SQL語句

  (1) 觸發(fā)器名稱在數(shù)據(jù)庫中必須是惟一的;

  (2) ON子句用于指定在其上執(zhí)行觸發(fā)器的表;

  (3) AFTER:指定觸發(fā)器只有在引發(fā)的SQL語句中指定的操作都已成功執(zhí)行,并且所有的約束檢查也成功完成后,才執(zhí)行此觸發(fā)器,這種觸發(fā)器稱為后觸發(fā)型觸發(fā)器;

  (4) FOR:作用同AFTER;

  (5) INSTEAD OF:指定執(zhí)行觸發(fā)器而不是執(zhí)行引發(fā)觸發(fā)器執(zhí)行的SQL語句,從而替代觸發(fā)語句的操作,這種觸發(fā)器稱為前觸發(fā)型觸發(fā)器;

  (6) INSTERT、DELETE或UPDATE是引發(fā)觸發(fā)器執(zhí)行的操作,若同時(shí)指定多個(gè)操作,則各操作之間用逗號(hào)分隔;

  2、 創(chuàng)建觸發(fā)器時(shí),需要注意:

  (1) 在一個(gè)表上可以建立多個(gè)名稱不同、類型各異的觸發(fā)器,每個(gè)觸發(fā)器可由三個(gè)操作引發(fā);

  (2) 大部分Transact-SQL語句都可用在觸發(fā)器中,但也有一些限制;

  (3) 在觸發(fā)器定義中,可以使用IF UPDATE子句測試在INSERT和UPDATE語句中是否對(duì)指定字段有影響;

  (4) 通常不要在觸發(fā)器中返回任何結(jié)果。

  3、 創(chuàng)建后觸發(fā)型觸發(fā)器

  使用FOR或AFTER選項(xiàng)定義的觸發(fā)器為后觸發(fā)的觸發(fā)器,即只有在引發(fā)觸發(fā)器執(zhí)行語句中指定的操作都已完成執(zhí)行,并且所有的約束檢查也成功完成后,才執(zhí)行的觸發(fā)器;

  4、 創(chuàng)建前觸發(fā)型觸發(fā)器

  使用INSTEAD OF 選項(xiàng)定義的觸發(fā)器為前觸發(fā)型觸發(fā)器,在該觸發(fā)器中,指定執(zhí)行觸發(fā)器而不是執(zhí)行引發(fā)觸發(fā)器執(zhí)行的SQL語句,從而替代引發(fā)語句的操作。

  13.4 查看、修改及刪除對(duì)象

  13.4.1 查看對(duì)象

  對(duì)于創(chuàng)建好的存儲(chǔ)過程、函數(shù)可通過企業(yè)管理器和查詢分析器查看這些對(duì)象的代碼;

  13.4.2 修改對(duì)象

  1、 修改存儲(chǔ)過程:ALTER PROCEDURE

  ALTER PROC 存儲(chǔ)過程名

  [{@參數(shù)名 數(shù)據(jù)類型}[=default][OUTPUT]][,…n]

  AS

  SQL語句[…n]

  修改與定義的語句基本一致,只將CREARE PROC 改成ALTER PROC;

  2、修改用戶自定義函數(shù):

  修改與定義的語句基本一致,只將CREARE FUNCTION 改成ALTER FUNCTION;

  3、修改觸發(fā)器:

  修改與定義的語句基本一致,只將CREARE TRIGGER 改成ALTER TRIGGER;

  13.4.3 刪除對(duì)象

  1、 刪除存儲(chǔ)過程:

  DROP PROCEDURE {存儲(chǔ)過程名}[,…n];

  2、刪除用戶自定義函數(shù)

  DROP FUNCTION {[擁有者名.]函數(shù)名}[,…n]

  3、刪除觸發(fā)器

  DROP TRIGGER {觸發(fā)器名}[,…n]

 

  相關(guān)推薦:

  各地2015年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總

  各地2015年上半年計(jì)算機(jī)等級(jí)考試費(fèi)用匯總

  考試吧特別策劃:2015年計(jì)算機(jī)等級(jí)考試報(bào)考指南

文章搜索
版權(quán)聲明:如果計(jì)算機(jī)等級(jí)考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請(qǐng)與我們聯(lián)系800@exam8.com,我們將會(huì)及時(shí)處理。如轉(zhuǎn)載本計(jì)算機(jī)等級(jí)考試網(wǎng)內(nèi)容,請(qǐng)注明出處。
Copyright © 2004- 考試吧計(jì)算機(jī)等級(jí)考試網(wǎng) All Rights Reserved 
中國科學(xué)院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧