項(xiàng)目4任務(wù)4TSQL語言簡介PPT課件_第1頁
項(xiàng)目4任務(wù)4TSQL語言簡介PPT課件_第2頁
項(xiàng)目4任務(wù)4TSQL語言簡介PPT課件_第3頁
項(xiàng)目4任務(wù)4TSQL語言簡介PPT課件_第4頁
項(xiàng)目4任務(wù)4TSQL語言簡介PPT課件_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、義務(wù)義務(wù)4 Transact-SQL4 Transact-SQL言語簡介言語簡介 l學(xué)習(xí)目的和要求學(xué)習(xí)目的和要求l1.了解了解Transact-SQL言語的功言語的功能及特點(diǎn);能及特點(diǎn);l2.掌握掌握Transact-SQL言語的變言語的變量;量;l3.了解了解SQL Server支持的數(shù)據(jù)支持的數(shù)據(jù)類型、運(yùn)算符、注釋符和標(biāo)類型、運(yùn)算符、注釋符和標(biāo)識(shí)符。識(shí)符。 義務(wù)義務(wù)4 Transact-SQL4 Transact-SQL言語簡介言語簡介1. Transact-SQL言語的特點(diǎn)言語的特點(diǎn) 2. SQL Server支持的數(shù)據(jù)類型支持的數(shù)據(jù)類型 3. SQL Server 2000中的運(yùn)算符中

2、的運(yùn)算符 4. Transact-SQL變量變量 5.注釋符和標(biāo)識(shí)符注釋符和標(biāo)識(shí)符 義務(wù)義務(wù)4 Transact-SQL4 Transact-SQL言語簡介言語簡介l SQLStructured Query Language言語是關(guān)系數(shù)據(jù)庫的規(guī)范言語,由于言語是關(guān)系數(shù)據(jù)庫的規(guī)范言語,由于SQL言語功能豐富,言語簡約,因此言語功能豐富,言語簡約,因此倍受用戶及計(jì)算機(jī)工業(yè)界歡迎。自倍受用戶及計(jì)算機(jī)工業(yè)界歡迎。自SQL成為國際規(guī)范后,各個(gè)數(shù)據(jù)庫廠成為國際規(guī)范后,各個(gè)數(shù)據(jù)庫廠家紛紛推出各自的支持家紛紛推出各自的支持SQL的軟件或的軟件或與與SQL的接口軟件。的接口軟件。lSQL是一種介于關(guān)系代數(shù)與關(guān)系

3、演算是一種介于關(guān)系代數(shù)與關(guān)系演算之間的構(gòu)造化查詢言語,其功能并不之間的構(gòu)造化查詢言語,其功能并不僅僅是查詢,僅僅是查詢,SQL言語是一個(gè)通用的、言語是一個(gè)通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫言語。功能極強(qiáng)的關(guān)系數(shù)據(jù)庫言語。 義務(wù)義務(wù)4 Transact-SQL4 Transact-SQL言語簡介言語簡介l Transact-SQL 是是SQL Server 2000提供的提供的查詢言語。運(yùn)用查詢言語。運(yùn)用Transact-SQL編寫運(yùn)用程編寫運(yùn)用程序可以完成一切的數(shù)據(jù)庫管理任務(wù)。任何序可以完成一切的數(shù)據(jù)庫管理任務(wù)。任何運(yùn)用程序,只需目的是向運(yùn)用程序,只需目的是向SQL Server 2000的數(shù)據(jù)庫管

4、理系統(tǒng)發(fā)出命令以獲得數(shù)據(jù)庫的數(shù)據(jù)庫管理系統(tǒng)發(fā)出命令以獲得數(shù)據(jù)庫管理系統(tǒng)的呼應(yīng),最終都必需表達(dá)為以管理系統(tǒng)的呼應(yīng),最終都必需表達(dá)為以Transact-SQL語句為表現(xiàn)方式的指令。對語句為表現(xiàn)方式的指令。對用戶來說,用戶來說,Transact-SQL是獨(dú)一可以和是獨(dú)一可以和SQL Server 2000的數(shù)據(jù)庫管理系統(tǒng)進(jìn)展交的數(shù)據(jù)庫管理系統(tǒng)進(jìn)展交互的言語?;サ难哉Z。 4.1 Transact-SQL言語的特點(diǎn)言語的特點(diǎn) l雖然雖然SQL Server 2000SQL Server 2000提供了運(yùn)用方便的圖形提供了運(yùn)用方便的圖形化用戶界面,但各種功能的實(shí)現(xiàn)根底是化用戶界面,但各種功能的實(shí)現(xiàn)根底是T

5、ransact-SQLTransact-SQL言語,只需言語,只需Transact-SQLTransact-SQL言語言語可以直接和數(shù)據(jù)庫引擎進(jìn)展交互。可以直接和數(shù)據(jù)庫引擎進(jìn)展交互。Transact-Transact-SQLSQL言語是基于商業(yè)運(yùn)用的構(gòu)造化查詢言語,言語是基于商業(yè)運(yùn)用的構(gòu)造化查詢言語,是規(guī)范是規(guī)范SQLSQL言語的加強(qiáng)版本。言語的加強(qiáng)版本。4.1 Transact-SQL言語的特點(diǎn)言語的特點(diǎn) 由于由于Transact-SQLTransact-SQL言語直接來源于言語直接來源于SQLSQL言言語,因此它也具有語,因此它也具有SQLSQL言語的幾個(gè)特點(diǎn)。言語的幾個(gè)特點(diǎn)。1.1.一體

6、化一體化 Transact-SQLTransact-SQL言語集數(shù)據(jù)定義言語、數(shù)言語集數(shù)據(jù)定義言語、數(shù)據(jù)支配言語、數(shù)據(jù)控制言語和附加言語據(jù)支配言語、數(shù)據(jù)控制言語和附加言語元素為一體。其中附加言語元素不是規(guī)元素為一體。其中附加言語元素不是規(guī)范范SQLSQL言語的內(nèi)容,但是它加強(qiáng)了用戶對言語的內(nèi)容,但是它加強(qiáng)了用戶對數(shù)據(jù)庫操作的靈敏性和簡便性,從而加數(shù)據(jù)庫操作的靈敏性和簡便性,從而加強(qiáng)了程序的功能。強(qiáng)了程序的功能。 4.1 Transact-SQL言語的特點(diǎn)言語的特點(diǎn)2.2.兩種運(yùn)用方式,一致的語法構(gòu)造兩種運(yùn)用方式,一致的語法構(gòu)造 兩種運(yùn)用方式,即聯(lián)機(jī)交互式和嵌入高級言語的運(yùn)兩種運(yùn)用方式,即聯(lián)機(jī)交

7、互式和嵌入高級言語的運(yùn)用方式。一致的語法構(gòu)造使用方式。一致的語法構(gòu)造使Transact-SQLTransact-SQL言語可用于一言語可用于一切用戶的數(shù)據(jù)庫活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管切用戶的數(shù)據(jù)庫活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、運(yùn)用程序員、決策支持系統(tǒng)管理人員以及許多其理員、運(yùn)用程序員、決策支持系統(tǒng)管理人員以及許多其他類型的終端用戶。他類型的終端用戶。 4.1 Transact-SQL言語的特點(diǎn)言語的特點(diǎn)3.3.高度非過程化高度非過程化 Transact-SQLTransact-SQL言語一次處置一個(gè)記錄,對數(shù)據(jù)提供言語一次處置一個(gè)記錄,對數(shù)據(jù)提供自動(dòng)導(dǎo)航;允許用戶在高層的數(shù)據(jù)

8、構(gòu)造上任務(wù),可操作自動(dòng)導(dǎo)航;允許用戶在高層的數(shù)據(jù)構(gòu)造上任務(wù),可操作記錄集,而不是對單個(gè)記錄進(jìn)展操作;一切的記錄集,而不是對單個(gè)記錄進(jìn)展操作;一切的SQLSQL語句語句接受集協(xié)作為輸入,前往集協(xié)作為輸出,并允許一條接受集協(xié)作為輸入,前往集協(xié)作為輸出,并允許一條SQLSQL語句的結(jié)果作為另一條語句的結(jié)果作為另一條SQLSQL語句的輸入。另外,語句的輸入。另外,Transact-SQLTransact-SQL言語不要求用戶指定對數(shù)據(jù)的存放方法,言語不要求用戶指定對數(shù)據(jù)的存放方法,一切的一切的Transact-SQLTransact-SQL語句運(yùn)用查詢優(yōu)化器,用以指定數(shù)語句運(yùn)用查詢優(yōu)化器,用以指定數(shù)據(jù)

9、以最快速度存取的手段。據(jù)以最快速度存取的手段。 4.1 Transact-SQL言語的特點(diǎn)言語的特點(diǎn)4.4.類似于人的思想習(xí)慣,容易了解和掌握類似于人的思想習(xí)慣,容易了解和掌握 SQLSQL言語的易學(xué)易用性,而言語的易學(xué)易用性,而Transact-SQLTransact-SQL言語是對言語是對SQLSQL言語的擴(kuò)展,因此也是非常容易了解和掌握的。假言語的擴(kuò)展,因此也是非常容易了解和掌握的。假設(shè)對設(shè)對SQLSQL言語比較了解,在學(xué)習(xí)和掌握言語比較了解,在學(xué)習(xí)和掌握Transact-SQLTransact-SQL言言語及其高級特性時(shí)就更游刃有余了。語及其高級特性時(shí)就更游刃有余了。 4.2 SQL

10、Server4.2 SQL Server支持的數(shù)據(jù)類型支持的數(shù)據(jù)類型 SQL Server 2000提供許多適用的數(shù)據(jù)類型,并具有定義用戶數(shù)據(jù)類型的功能。表4-4中列出了SQL Server 2000提供的主要數(shù)據(jù)類型。 4.2 SQL Server4.2 SQL Server支持的數(shù)據(jù)類型支持的數(shù)據(jù)類型類型表示類型說明數(shù)值型數(shù)據(jù)Int全字長(四字節(jié))整數(shù),其中31 bits表示數(shù)據(jù),1位符號。取值范圍為-2147836482147483647Smallint半字長的整數(shù),取值范圍為-3276832767Tinyint只占一個(gè)字節(jié)的正數(shù),表示范圍為0255Real4字節(jié)長的浮點(diǎn)數(shù),最大精度為7

11、位,取值范圍為3.4E-383.4E+38Float(n)精度為n的浮點(diǎn)數(shù),其精度n的可以為115,若忽略n則精度為15。最多占用字節(jié)數(shù)為8,表示范圍為1.7E-3081.7E+308Decimal(p,q)十進(jìn)制,共p位,q位小數(shù),可用211個(gè)字節(jié)存放138位精度的數(shù)值字符型數(shù)據(jù)CHAR(n)長度為n的定長字符串,最多可為255個(gè)字符VarCHAR(n)最大長度為n的變長字符串型數(shù)據(jù),最多可達(dá)255個(gè)字符日期、時(shí)間型數(shù)據(jù)Datetime日期時(shí)間型數(shù)據(jù),可存儲(chǔ)1/1/175312/31/9999之間的日期時(shí)間,缺省表示為MMDDYYYYhhmm AM/PMSmalldatetime日期時(shí)間型數(shù)

12、據(jù),可表示1/1/19006/6/2079時(shí)間特殊數(shù)據(jù)類型Binary(n)長度為n個(gè)字節(jié)的位模式(二進(jìn)制數(shù)),輸入0F二進(jìn)制數(shù)時(shí),第一個(gè)值必須以0 x開頭Varbinary(n)最大長度為n個(gè)字節(jié)的變長位模式,輸入方法同binary相同文本和圖象數(shù)據(jù)類型Text文本數(shù)據(jù)類型Image圖像數(shù)據(jù)貨幣數(shù)據(jù)類型Money貨幣數(shù)據(jù),可存放15位整數(shù),4位小數(shù)的數(shù)值,占8個(gè)字節(jié)Smallmoney貨幣數(shù)據(jù),可存放6位整數(shù),4位小數(shù)的數(shù)值,占4個(gè)字節(jié)4.3 SQL Server 20004.3 SQL Server 2000中的運(yùn)算符中的運(yùn)算符 運(yùn)算符是一種符號,用來指定要在一個(gè)或多個(gè)表達(dá)式中執(zhí)行的操作。

13、Transact-SQL的查詢語句中運(yùn)用的運(yùn)算符,如表4-5所示。 4.3 SQL Server 20004.3 SQL Server 2000中的運(yùn)算符中的運(yùn)算符 類別符號算術(shù)運(yùn)算符+(加),(減),*(乘),/(除),%(取余或模)比較運(yùn)算符=(等于),(大于),=(大于等于或不小于),!(不小于),(不大于),(不等于),!=(不等于)范圍運(yùn)算符BETWEENAND(在之間),NOT BETWEENAND(不在之間)子查詢運(yùn)算符IN(在之中),NOT IN(不在之中),比較符ALL(全部),比較符ANY(任一),比較符SOME(一些),EXIST(存在),NOT EXIST(不存在)字符

14、串運(yùn)算符+(連接),LIKE(匹配),NOT LIKE(不匹配)未知值運(yùn)算符IS NULL(是空值),NOT IS NULL(不是空值)邏輯運(yùn)算符NOT(非),AND(與),OR(或)組合運(yùn)算符UNION(并),UNION ALL(并,允許重復(fù)的元組)4.4 Transact-SQL4.4 Transact-SQL變量變量 變量對于一種言語來說是必不可少的組成部分。Transact-SQL言語允許運(yùn)用兩種變量:一種是用戶本人定義的部分變量(Local Variable),另一種是系統(tǒng)提供的全局變量(Global Variable)。 4.4 Transact-SQL4.4 Transact-S

15、QL變量變量 1.1.部分變量部分變量 部分變量運(yùn)用戶本人定義的變量,它的作用部分變量運(yùn)用戶本人定義的變量,它的作用范圍僅在程序內(nèi)部。通常只能在一個(gè)批處置中或范圍僅在程序內(nèi)部。通常只能在一個(gè)批處置中或存儲(chǔ)過程中運(yùn)用,用來存儲(chǔ)從表中查詢到的數(shù)據(jù),存儲(chǔ)過程中運(yùn)用,用來存儲(chǔ)從表中查詢到的數(shù)據(jù),或當(dāng)作程序執(zhí)行過程中暫存變量運(yùn)用?;虍?dāng)作程序執(zhí)行過程中暫存變量運(yùn)用。2.2.全局變量全局變量 全局變量是全局變量是SQL Server 2000SQL Server 2000系統(tǒng)內(nèi)部運(yùn)用的系統(tǒng)內(nèi)部運(yùn)用的變量,起作用范圍并不局限于某一程序,而是任變量,起作用范圍并不局限于某一程序,而是任何程序均可隨時(shí)調(diào)用。全局變

16、量通常存儲(chǔ)一些何程序均可隨時(shí)調(diào)用。全局變量通常存儲(chǔ)一些SQL SQL Server 2000Server 2000的配置設(shè)置值和效能統(tǒng)計(jì)數(shù)據(jù)。用戶的配置設(shè)置值和效能統(tǒng)計(jì)數(shù)據(jù)。用戶可在程序中用全局變量來測試系統(tǒng)的設(shè)定值或者可在程序中用全局變量來測試系統(tǒng)的設(shè)定值或者Transact_SQLTransact_SQL命令執(zhí)行后的形狀值。命令執(zhí)行后的形狀值。 4.5 4.5 注釋符和標(biāo)識(shí)符注釋符和標(biāo)識(shí)符 1.1.注釋符注釋符 程序中的注釋可以添加程序可讀性。在程序中的注釋可以添加程序可讀性。在Transact-Transact-SQLSQL言語中可運(yùn)用兩種注釋符:行注釋和塊注釋。言語中可運(yùn)用兩種注釋符:

17、行注釋和塊注釋。行注釋符為行注釋符為“-,這是,這是ANSIANSI規(guī)范的注釋符,用于單行規(guī)范的注釋符,用于單行注釋。注釋。塊注釋符為塊注釋符為“/ /* * */ /,“/ /* *用于注釋文字的開頭,用于注釋文字的開頭,“* */ /用于注釋文字的末尾。塊注釋符可在程序中標(biāo)識(shí)用于注釋文字的末尾。塊注釋符可在程序中標(biāo)識(shí)多行文字為注釋。多行文字為注釋。 4.5 4.5 注釋符和標(biāo)識(shí)符注釋符和標(biāo)識(shí)符 2.SQL Server2.SQL Server的標(biāo)識(shí)符的標(biāo)識(shí)符 SQL Server SQL Server的一切對象,包括效力器、數(shù)據(jù)庫以及數(shù)據(jù)庫對象,如的一切對象,包括效力器、數(shù)據(jù)庫以及數(shù)據(jù)庫對

18、象,如表、視圖、列、索引、觸發(fā)器、存儲(chǔ)過程、規(guī)那么、默許值和約束等都表、視圖、列、索引、觸發(fā)器、存儲(chǔ)過程、規(guī)那么、默許值和約束等都可以有一個(gè)標(biāo)識(shí)符。對絕大多數(shù)對象來說,標(biāo)識(shí)符是必不可少的,但對可以有一個(gè)標(biāo)識(shí)符。對絕大多數(shù)對象來說,標(biāo)識(shí)符是必不可少的,但對某些對象如約束來說,能否規(guī)定標(biāo)識(shí)符是可選的。對象的標(biāo)識(shí)符普通在某些對象如約束來說,能否規(guī)定標(biāo)識(shí)符是可選的。對象的標(biāo)識(shí)符普通在創(chuàng)建對象時(shí)定義,作為援用對象的工具運(yùn)用。創(chuàng)建對象時(shí)定義,作為援用對象的工具運(yùn)用。(1) (1) 標(biāo)識(shí)符的分類標(biāo)識(shí)符的分類 在在SQL ServerSQL Server中標(biāo)識(shí)符共有兩種類型中標(biāo)識(shí)符共有兩種類型: :一種是規(guī)那

19、么標(biāo)識(shí)符一種是規(guī)那么標(biāo)識(shí)符(Regular identifer)(Regular identifer),一種是界定標(biāo)識(shí)符,一種是界定標(biāo)識(shí)符(Delimited identifer)(Delimited identifer)。其中,規(guī)那么標(biāo)識(shí)符嚴(yán)厲遵守標(biāo)識(shí)符的有關(guān)格式的規(guī)定,所以在其中,規(guī)那么標(biāo)識(shí)符嚴(yán)厲遵守標(biāo)識(shí)符的有關(guān)格式的規(guī)定,所以在Transact_SQLTransact_SQL中凡是規(guī)那么運(yùn)算符都不用運(yùn)用定界符。對于不符合標(biāo)識(shí)中凡是規(guī)那么運(yùn)算符都不用運(yùn)用定界符。對于不符合標(biāo)識(shí)符格式的標(biāo)識(shí)符要運(yùn)用界定符符格式的標(biāo)識(shí)符要運(yùn)用界定符或或。4.5 4.5 注釋符和標(biāo)識(shí)符注釋符和標(biāo)識(shí)符 2.SQL

20、Server2.SQL Server的標(biāo)識(shí)符的標(biāo)識(shí)符(2) (2) 標(biāo)識(shí)符格式標(biāo)識(shí)符格式1 1標(biāo)識(shí)符必需是一致碼標(biāo)識(shí)符必需是一致碼(Unicode)2.0(Unicode)2.0規(guī)范中規(guī)定的字符,包括規(guī)范中規(guī)定的字符,包括2626個(gè)英個(gè)英文字母文字母a-za-z和和A-ZA-Z,以及其他一些言語字符,如漢字。,以及其他一些言語字符,如漢字。2 2標(biāo)識(shí)符后的字符可以是標(biāo)識(shí)符后的字符可以是“_ _、“、“# #、“$ $及數(shù)字。及數(shù)字。3 3標(biāo)識(shí)符不允許是標(biāo)識(shí)符不允許是Transact-SQLTransact-SQL的保管字。的保管字。4 4標(biāo)識(shí)符內(nèi)不允許有空格和特殊字符。標(biāo)識(shí)符內(nèi)不允許有空格和特殊字符。5 5標(biāo)識(shí)符不區(qū)分大小寫。標(biāo)識(shí)符不區(qū)分大小寫。 4.5 4.5 注釋符和標(biāo)識(shí)符注釋符和標(biāo)識(shí)符 2.SQL Server2.SQL Server的標(biāo)識(shí)符的標(biāo)識(shí)符(2) (2) 標(biāo)識(shí)符格式標(biāo)識(shí)符格式 另外,某些以特殊符號開頭的標(biāo)識(shí)符在另外,某些以特殊符號開頭的標(biāo)識(shí)符在SQL ServerSQL Server中具有特定的含中具有特定的含義。如以義。如以“開頭的標(biāo)識(shí)符表示這是一個(gè)部分變量或是一個(gè)函數(shù)的參數(shù)開頭的標(biāo)識(shí)符表示這是一個(gè)部分變量或是一個(gè)函數(shù)的參數(shù); ;以以#

溫馨提示

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

最新文檔

評論

0/150

提交評論