第5章 TSQL語言_第1頁
第5章 TSQL語言_第2頁
第5章 TSQL語言_第3頁
第5章 TSQL語言_第4頁
第5章 TSQL語言_第5頁
已閱讀5頁,還剩108頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第5章章 t-sql語言語言 (1) 數(shù)據(jù)定義語言(數(shù)據(jù)定義語言(ddl)。)。 第第5章章 t-sql語言語言 (2) 數(shù)據(jù)操縱語言(數(shù)據(jù)操縱語言(dml)。)。 第第5章章 t-sql語言語言 (3) 數(shù)據(jù)控制語言(數(shù)據(jù)控制語言(dcl)。)。 5.1 常量、變量與數(shù)據(jù)類型常量、變量與數(shù)據(jù)類型 5.1.1 常常 量量 1.字符串常量字符串常量 5.1.1 常常 量量 2. 整型常量整型常量 5.1.1 常常 量量 3. 實(shí)型常量實(shí)型常量 5.1.1 常常 量量 4. 日期時間常量日期時間常量 5.1.1 常常 量量 5.1.2 數(shù)據(jù)類型數(shù)據(jù)類型 1. 系統(tǒng)數(shù)據(jù)類型系統(tǒng)數(shù)據(jù)類型 2. 用戶

2、自定義數(shù)據(jù)類型用戶自定義數(shù)據(jù)類型 5.1.2 數(shù)據(jù)類型數(shù)據(jù)類型 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 1) 利用企業(yè)管理器定義利用企業(yè)管理器定義 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 2) 利用命令定義數(shù)據(jù)類型利用命令定義數(shù)據(jù)類型 語法格式語法格式 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 3. 自定義數(shù)據(jù)類型的刪除自定義數(shù)據(jù)類型的刪除 1)用企業(yè)管理器刪除自定義數(shù)據(jù)類型用企業(yè)管理器刪除自定義數(shù)據(jù)類型 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 2) 義數(shù)利用命令刪除自定據(jù)類型義數(shù)利用命令刪除自定據(jù)類型 刪除刪除library_card_num類型的語句為:類型的語句為: 5

3、.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 4. 利用自定義類型定義字段利用自定義類型定義字段 5.1.2 數(shù)數(shù) 據(jù)據(jù) 類類 型型 5.1.3 變變 量量 1. 變變 量量 1) 標(biāo)識符標(biāo)識符 (1) 常規(guī)標(biāo)識符常規(guī)標(biāo)識符 (2) 分隔標(biāo)識符分隔標(biāo)識符 2) 變量的分類變量的分類 (1) 全局變量全局變量 (2) 局部變量局部變量 以以ascii字母、字母、unicode字母、下劃線字母、下劃線 (_)、或或#開頭,可后續(xù)一個或若開頭,可后續(xù)一個或若 干個干個ascii字符、字符、unicode字符、下劃線字符、下劃線 (_)、美元符號(、美元符號($)、)、或或#,但不能,但不能 全為下劃線全為下劃線

4、(_)、或或#。 5.1.3 變變 量量 2. 局部變量的使用局部變量的使用 1) 局部變量的定義與賦值局部變量的定義與賦值 (1) 局部變量的定義 (2) 局部變量的賦值 5.1.3 變變 量量 例如:創(chuàng)建局部變量例如:創(chuàng)建局部變量var1、var2,并賦值,然后輸出變量的值。,并賦值,然后輸出變量的值。 5.1.3 變變 量量 例如:創(chuàng)建一個名為例如:創(chuàng)建一個名為sex的局部變量,并在的局部變量,并在 select 語句中使用該語句中使用該 局部變量查找表局部變量查找表xs中所有男同學(xué)的借書證號、姓名。中所有男同學(xué)的借書證號、姓名。 5.1.3 變變 量量 例如:查詢用于給例如:查詢用于給

5、 var1 賦值。在賦值。在 xs 表中表中id_number不存在,因不存在,因 此子查詢不返回值,并將變量此子查詢不返回值,并將變量var1設(shè)為設(shè)為 null。 5.1.3 變變 量量 2)局部游標(biāo)變量的定義與賦值)局部游標(biāo)變量的定義與賦值 (1) 局部游標(biāo)變量的定義 5.1.3 變變 量量 5.1.3 變變 量量 5.1.3 變變 量量 (3) 游標(biāo)變量的使用步驟游標(biāo)變量的使用步驟 例如:使用游標(biāo)變量 5.1.3 變變 量量 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 1算術(shù)運(yùn)算符算術(shù)運(yùn)算符 例如:求讀者的年齡 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 2.位運(yùn)算符位運(yùn)算符 5.2 運(yùn)算符與表達(dá)式

6、運(yùn)算符與表達(dá)式 例如:例如: 在在maste數(shù)據(jù)庫中,建立表數(shù)據(jù)庫中,建立表bitop,并插入一行,然后將,并插入一行,然后將a 字段和字段和 b字段上的值進(jìn)行位運(yùn)算。字段上的值進(jìn)行位運(yùn)算。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 3. 比較運(yùn)算符比較運(yùn)算符 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 例如:用于查詢指定借書證號的學(xué)生在xs表中的信息。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 4. 邏輯運(yùn)算符邏輯運(yùn)算符 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 1) any、some、all、in的使用的使用 例如:查詢借書數(shù)量最多

7、的讀者借書證號、姓名及借書數(shù)量。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 例如:查詢借書數(shù)量多于王娟借書數(shù)量的讀者借書證號、姓例如:查詢借書數(shù)量多于王娟借書數(shù)量的讀者借書證號、姓 名、借書數(shù)量。名、借書數(shù)量。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 2) between的使用的使用 例如:查詢借書數(shù)量不在例如:查詢借書數(shù)量不在 510本之間的借書證號、姓名及借書量。本之間的借書證號、姓名及借書量。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 例如:查詢借書數(shù)量在例如:查詢借書數(shù)量在 510本之間的借書證號、姓名及借書量。本之間的借書證號、姓名及借書量。 5.2 運(yùn)算

8、符與表達(dá)式運(yùn)算符與表達(dá)式 3)like的使用的使用 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 例如:查詢書名以例如:查詢書名以“計(jì)算機(jī)計(jì)算機(jī)”開頭的書籍的有關(guān)信息開頭的書籍的有關(guān)信息 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 例如:在如下的存儲過程定義中,讀者的借書證號作為入口參數(shù),然后例如:在如下的存儲過程定義中,讀者的借書證號作為入口參數(shù),然后 使用模式匹配查找某個學(xué)生借的全部書籍。使用模式匹配查找某個學(xué)生借的全部書籍。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 4)exists與與not exists的使用的使用 例如:查詢

9、所有當(dāng)前借了書的讀者借書證號、姓名。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 5. 字符串聯(lián)接運(yùn)算符字符串聯(lián)接運(yùn)算符 例如:多個字符串的聯(lián)接。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 6. 一元運(yùn)算一元運(yùn)算 7. 賦值運(yùn)算符賦值運(yùn)算符 指給局部變量賦值的set和select語句中使用的“=”。 5.2 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式 8. 運(yùn)算符的優(yōu)先順序運(yùn)算符的優(yōu)先順序 5.3 流程控制語句流程控制語句 5.3.1 if.else語句語句 5.3.1 if.else語句語句 5.3.1 if.else語句語句 v例如:如果例如:如果“數(shù)據(jù)庫原理數(shù)據(jù)庫原理”這一

10、書籍的價格高于平均價格,這一書籍的價格高于平均價格, 則顯示:則顯示: “數(shù)據(jù)庫原理的價格高于平均價格數(shù)據(jù)庫原理的價格高于平均價格”,否則顯示,否則顯示 “數(shù)據(jù)庫原理的價格低于平均價格數(shù)據(jù)庫原理的價格低于平均價格”。 5.3.1 if.else語句語句 5.3.2 goto語句語句 5.3.3 while、break和和continue語句語句 1. while循環(huán)語句循環(huán)語句 5.3.3 while、break和和continue語句語句 5.3.3 while、break和和continue語句語句 v例如例如:顯示字符串顯示字符串china中每個字符的中每個字符的 ascii 值和字符。

11、值和字符。 5.3.4 return語句語句 5.3.4 return語句語句 例如:創(chuàng)建存儲過程checkcount,根據(jù)書籍的isbn檢查其 庫存量,若庫存量0,返回狀態(tài)代碼 1,否則,返回狀態(tài)代 碼 2。 5.3.4 return語句語句 5.3.5 waitfor語句語句 例如:語句設(shè)定在早上八點(diǎn)執(zhí)行存儲過程例如:語句設(shè)定在早上八點(diǎn)執(zhí)行存儲過程 manager。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) vsql server包含如下幾類標(biāo)量函數(shù):包含如下幾類標(biāo)量函數(shù): 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 1. 數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) v例如:下面程序返回給定角的例如

12、:下面程序返回給定角的 acos 值。值。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:下面程序通過 rand 函數(shù)產(chǎn)生隨機(jī)值。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 2. 字符串處理函數(shù)字符串處理函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:返回書名最左邊的例如:返回書名最左邊的 10 個字符。個字符。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:使用 ltrim 字符刪除字符變量中的起始空格。 例如:用 replace實(shí)現(xiàn)字符串的替換。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:下面程序用于查詢isbn號7-111-06359-7書籍的書名和庫存量。 5.4 系統(tǒng)內(nèi)置函

13、數(shù)系統(tǒng)內(nèi)置函數(shù) 3. 系統(tǒng)函數(shù)系統(tǒng)函數(shù) 1) case函數(shù)函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:使用例如:使用 case 函數(shù)對讀者按性別分類。函數(shù)對讀者按性別分類。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 2) cast 和和 convert函數(shù)函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:下程序?qū)z索庫存量為3050的isbn、書名,并將 庫存量轉(zhuǎn)換為 char(20)。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 3) coalesce函數(shù)函數(shù) 5.4 系統(tǒng)內(nèi)置

14、函數(shù)系統(tǒng)內(nèi)置函數(shù) 4. 日期時間函數(shù)日期時間函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:編寫程序根據(jù)讀者的出生時間,計(jì)算其年齡。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5. 游標(biāo)函數(shù)游標(biāo)函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 例如:用 fetch_status 控制在一個 while 循環(huán)中的游標(biāo)活動。 5.4 系統(tǒng)內(nèi)置函數(shù)系統(tǒng)內(nèi)置函數(shù) 6. 元數(shù)據(jù)函數(shù)元數(shù)據(jù)函數(shù) 5.5 用戶定義函數(shù)用戶定義函數(shù) 根據(jù)用戶定義函數(shù)返回值的類型,可將用戶定義函數(shù)分為如 下三類: 5.5.1 系統(tǒng)表系統(tǒng)表sysob

15、jects 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 函數(shù)與其引用對象(如數(shù)據(jù)庫表)的綁定關(guān)系只有在發(fā)生以下兩種情況 之一時才被解除: 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 例如:定義一函數(shù),按性別計(jì)算當(dāng)前所有讀者的平均年齡。例如:定義一函數(shù),按性別計(jì)算當(dāng)前所有讀者的平均年齡。 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 2) 標(biāo)量函數(shù)的調(diào)用標(biāo)量函數(shù)的調(diào)用 (1) 在在select語句中調(diào)用語句中

16、調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 (2) 利用利用exec語句執(zhí)行語句執(zhí)行 例如:利用exec調(diào)用用戶定義函數(shù)aver_age。 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 2. 內(nèi)嵌表值函數(shù)內(nèi)嵌表值函數(shù) 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 例如:對于xsbook數(shù)據(jù)庫,若需要定義查詢讀者借閱歷史的內(nèi)嵌表值 函數(shù),如何實(shí)現(xiàn)? 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 2) 內(nèi)嵌表值函數(shù)的調(diào)用內(nèi)嵌表值函數(shù)的調(diào)用 例如:調(diào)用fn_query()函數(shù),查詢借書證號為“10000001”讀者的借閱歷史。 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 3. 多語句表值函數(shù)多語句表值函數(shù) 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 5.5.2 用戶函數(shù)的定義與調(diào)用用戶函數(shù)的定義與調(diào)用 例如:在xsbook數(shù)據(jù)庫中創(chuàng)建返回table的函數(shù)book_re

溫馨提示

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

評論

0/150

提交評論