資源描述:
《SQL Server2000實用教程 教學(xué)課件 作者 蔣文沛 第7章.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、第7章Transact-SQL程序設(shè)計使用Transact-SQL語言進(jìn)行程序設(shè)計是SQLServer的主要應(yīng)用形式之一。不論是普通的客戶機/服務(wù)器應(yīng)用程序,還是Web應(yīng)用程序,都必須對涉及數(shù)據(jù)庫中數(shù)據(jù)進(jìn)行的處理描述成Transact-SQL語句,并通過向服務(wù)器端發(fā)送Transact-SQL語句才能實現(xiàn)與SQLServer的通信。本章將首先介紹Transact-SQL語言的基本知識,然后在此基礎(chǔ)上介紹Transact-SQL語言基本要素、流程控制語句和游標(biāo)的使用。SQLServer2000實用教程7.1Transact-SQL語言基礎(chǔ)T-SQL語言的基本成分是語句,由一個或多個
2、語句可以構(gòu)成一個批處理,由一個或多個批處理可以構(gòu)成一個查詢腳本(以sql作為文件擴展名)并保存到磁盤文件中,供以后需要時使用。在編寫和執(zhí)行T-SQL語句時,將會使用到下列語句:(1)數(shù)據(jù)定義語言(DDL)語句:用于對數(shù)據(jù)庫以及數(shù)據(jù)庫對象進(jìn)行創(chuàng)建、修改和刪除等操作,主要包括CREATE、ALTER和DROP語句。針對不同的數(shù)據(jù)庫對象,其語法格式不同。例如:創(chuàng)建數(shù)據(jù)庫是CREATEDATABASE語句,創(chuàng)建表是CREATETABLE語句。(2)數(shù)據(jù)操作語言(DML)語句:用于查詢和修改數(shù)據(jù)庫中的數(shù)據(jù),包括SELECT、INSERT、UPDATE和DELETE語句。(3)數(shù)據(jù)控制語言
3、(DCL)語句:用于安全管理,改變數(shù)據(jù)庫用戶或角色的相關(guān)權(quán)限。包括GRANT、REVOKE和DENY語句。有關(guān)DDL、DML、DCL各語句的語法、用法及例子請參考本書相關(guān)章節(jié)。SQLServer2000實用教程7.2Transact-SQL語言要素7.2.1批處理批處理就是單個或多個Transact-SQL語句的集合,由應(yīng)用程序一次性發(fā)送給SQLServer解釋并執(zhí)行批處理內(nèi)的所有語句指令。使用GO命令和使用EXECUTE命令可以將批處理發(fā)送給SQLServer。1.GO命令GO命令本身不屬于Transact-SQL語句。2.EXEC命令EXEC命令用于執(zhí)行用戶定義的函數(shù)以及存
4、儲過程。SQLServer2000實用教程7.2Transact-SQL語言要素7.2.2注釋語句注釋是程序代碼中不執(zhí)行的文本字符串。它起到注解說明代碼或暫時禁用正在進(jìn)行診斷調(diào)試的部分語句和批處理的作用。注釋能使得程序代碼更易于維護(hù)和被讀者所理解。SQLServer支持兩種形式的注釋語句,即行內(nèi)注釋和塊注釋。1.行內(nèi)注釋行內(nèi)注釋的語法格式為:--注釋文本2.塊注釋塊注釋的語法格式為:/*注釋文本*/SQLServer2000實用教程7.2Transact-SQL語言要素7.2.3標(biāo)識符SQLServer的標(biāo)識符分為兩大類:1.標(biāo)準(zhǔn)標(biāo)識符也稱為常規(guī)標(biāo)識符,它包含1~128個字符,
5、以字母(a~z或A~Z)、下劃線(_)、@或#開頭,后續(xù)字符可以是ASCII字符、Unicode字符、符號(_、$、@或#),但不能全為下劃線(_)、@或#。2.分隔標(biāo)識符分隔標(biāo)識符是包含在雙引號("")或中括號([])內(nèi)的標(biāo)準(zhǔn)標(biāo)識符或不符合標(biāo)準(zhǔn)標(biāo)識符規(guī)則的標(biāo)識符。對于不符合標(biāo)準(zhǔn)標(biāo)識符規(guī)則的,比如對象或?qū)ο竺Q的一部分使用了保留關(guān)鍵字的,或者標(biāo)識符中包含嵌入空格的,都必須分隔。SQLServer2000實用教程7.2Transact-SQL語言要素7.2.4全局變量與局部變量變量是用來臨時存放數(shù)據(jù)的對象。是SQLServer用于在T-SQL語句間傳遞數(shù)據(jù)的方式之一。變量有名字和
6、數(shù)據(jù)類型兩個屬性。由系統(tǒng)或用戶定義并賦值。SQLServer中的變量可以分為兩大類:全局變量和局部變量。1.全局變量全局變量以@@開頭,由系統(tǒng)定義和維護(hù),不能由用戶創(chuàng)建,對用戶來說是只讀的,大部分的全局變量記錄了SQLServer服務(wù)器的當(dāng)前狀態(tài)信息。全部變量是不可以賦值的。2.局部變量局部變量以@開頭,由用戶定義和賦值,指在T-SQL批處理和腳本中用來保存數(shù)據(jù)值的對象。此外,還允許用table數(shù)據(jù)類型的局部變量來代替臨時表。SQLServer2000實用教程7.2Transact-SQL語言要素7.2.5運算符和表達(dá)式1.運算符運算符是執(zhí)行數(shù)學(xué)運算、字符串連接以及比較操作的一
7、種符號。SQLServer2000使用的運算符共有七類:算術(shù)運算符、比較運算符、邏輯運算符、字符串連接運算符、位運算符、賦值運算符和一元運算符。SQLServer2000實用教程7.2Transact-SQL語言要素7.2.5運算符和表達(dá)式2.表達(dá)式表達(dá)式是符號和運算符的組合,通過運算符連接運算量構(gòu)成表達(dá)式,用來計算以獲得單個數(shù)據(jù)值。表達(dá)式可以是由單個常量、變量、字段或標(biāo)量函數(shù)構(gòu)成的簡單表達(dá)式,也可以是通過運算符連接起來的兩個或更多的簡單表達(dá)式所組成的復(fù)雜表達(dá)式。結(jié)果的數(shù)據(jù)類型由表達(dá)式中的元