數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt

上傳人:za****8 文檔編號(hào):15474508 上傳時(shí)間:2020-08-12 格式:PPT 頁(yè)數(shù):88 大?。?46.52KB
收藏 版權(quán)申訴 舉報(bào) 下載
數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt_第1頁(yè)
第1頁(yè) / 共88頁(yè)
數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt_第2頁(yè)
第2頁(yè) / 共88頁(yè)
數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt_第3頁(yè)
第3頁(yè) / 共88頁(yè)

下載文檔到電腦,查找使用更方便

14.9 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫(kù)之第八講:Transact-SQL語(yǔ)言基礎(chǔ).ppt(88頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、1,Transact-SQL語(yǔ)言基礎(chǔ) (對(duì)應(yīng)教材第6章) 電氣信息工程學(xué)院自動(dòng)化教研室 主講教師:陳志武 Email:CHENYYJ163.COM,第六講,2,主要內(nèi)容,,基本數(shù)據(jù)類型,2,常量與變量,3,運(yùn)算符與表達(dá)式,4,流程控制語(yǔ)句,5,T-SQL語(yǔ)言簡(jiǎn)介,1,3,主要內(nèi)容,,注釋,6,函數(shù),7,4,一、歷史,1、T-SQL語(yǔ)言簡(jiǎn)介,1、T-SQL語(yǔ)言起源于SQL( Structured Query Language )語(yǔ)言,SQL語(yǔ)言的歷史: 70年代: 由IBM公司開(kāi)發(fā)出來(lái)的;1976年開(kāi)始在商品化關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中應(yīng)用; 1986:ANSI確認(rèn)SQL為關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的美國(guó)標(biāo)準(zhǔn),198

2、7年被ISO采納為國(guó)際標(biāo)準(zhǔn), 稱為SQL-86; 1989: ANSI發(fā)布了SQL-89標(biāo)準(zhǔn),后來(lái)被ISO采納為國(guó)際標(biāo)準(zhǔn); 1992: ANSI/ISO發(fā)布了SQL-92標(biāo)準(zhǔn),習(xí)慣稱為SQL 2;1999年: ANSI/ISO發(fā)布了SQL-99標(biāo)準(zhǔn),習(xí)慣稱為SQL 3; 2003: ANSI/ISO共同推出了SQL 2003標(biāo)準(zhǔn)。,5,一、歷史,1、T-SQL語(yǔ)言簡(jiǎn)介,1、T-SQL語(yǔ)言起源于SQL( Structured Query Language )語(yǔ)言,Transact-SQL語(yǔ)言是Microsoft開(kāi)發(fā)的一種SQL語(yǔ)言,簡(jiǎn)稱T-SQL語(yǔ)言。它不僅包含了SQL-86和SQL-92的大多

3、數(shù)功能,而且還對(duì)SQL進(jìn)行了一系列的擴(kuò)展,增加了許多新特性,增強(qiáng)了可編程性和靈活性。Transact-SQL語(yǔ)言主要包括: 數(shù)據(jù)定義語(yǔ)句(Data Definition Language,DDL) 如對(duì)數(shù)據(jù)庫(kù)對(duì)象的創(chuàng)建(CREATE)、修改(ALTER)、 刪除語(yǔ)句(DROP) 等,6,一、歷史,1、T-SQL語(yǔ)言簡(jiǎn)介,1、T-SQL語(yǔ)言起源于SQL( Structured Query Language )語(yǔ)言,數(shù)據(jù)操縱語(yǔ)句(Data Manipulation Language,DML) 用來(lái)查詢(SELECT)、添加(INSERT) 、修改(UPDATE) 、刪除(DELETE)、數(shù)據(jù)庫(kù)中數(shù)

4、據(jù)的語(yǔ)句 數(shù)據(jù)控制語(yǔ)句(Data Control Language,DCL) 用來(lái)設(shè)置或更改 數(shù)據(jù)庫(kù)用戶或角色的語(yǔ)句。,7,一、歷史,1、T-SQL語(yǔ)言簡(jiǎn)介,1、T-SQL語(yǔ)言起源于SQL( Structured Query Language )語(yǔ)言,一些附加的語(yǔ)言元素 如變量、函數(shù)、流程控制語(yǔ)句等,這些不是SQL-92的標(biāo)準(zhǔn)內(nèi)容,8,二、標(biāo)識(shí)符,2、標(biāo)識(shí)符的分類: (1)常規(guī)標(biāo)識(shí)符 (2)分隔標(biāo)識(shí)符,1、標(biāo)識(shí)符的定義: 標(biāo)識(shí)符用于標(biāo)識(shí)服務(wù)器、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)對(duì)象、變量等。,1、T-SQL語(yǔ)言簡(jiǎn)介,9,二、標(biāo)識(shí)符,1、T-SQL語(yǔ)言簡(jiǎn)介,1. 常規(guī)標(biāo)識(shí)符 指符合標(biāo)識(shí)符格式規(guī)則的標(biāo)識(shí)符。標(biāo)識(shí)符的

5、格式規(guī)則如下: 長(zhǎng)度不超過(guò)128個(gè)字符。 開(kāi)頭字母為a-z或A-Z、#、_ 或 以及來(lái)自其它語(yǔ)言的字母字符。 后續(xù)字符可以是a-z、A-Z、來(lái)自其它語(yǔ)言的字母字符、數(shù)字、#、$、_、。 不允許嵌入空格或其它特殊字符。 不允許與保留字同名。,10,二、標(biāo)識(shí)符,1、T-SQL語(yǔ)言簡(jiǎn)介,2. 分隔標(biāo)識(shí)符 對(duì)于不符合格式規(guī)則的標(biāo)識(shí)符,當(dāng)用于Transact-SQL語(yǔ)句時(shí),必須用雙引號(hào)或方括號(hào)括起來(lái)。 例如: SELECT * FROM My Table 等價(jià)于 SELECT * FROM My Table,11,二、標(biāo)識(shí)符,1、T-SQL語(yǔ)言簡(jiǎn)介,對(duì)于常規(guī)標(biāo)識(shí)符,可以加上雙引號(hào)或方括號(hào),也可以不

6、加。 【例如: SELECT * FROM authors 該語(yǔ)句等價(jià)于 SELECT * FROM authors 也等價(jià)于 SELECT * FROM authors,12,三、語(yǔ)句符號(hào)約定,1、T-SQL語(yǔ)言簡(jiǎn)介,13,三、語(yǔ)句符號(hào)約定,1、T-SQL語(yǔ)言簡(jiǎn)介,例如,SELECT子句的語(yǔ)法如下: SELECT ALL | DISTINCT TOP n PERCENT WITH TIES 其中,語(yǔ)法塊進(jìn)一步定義如下: ::= * | 表名 | 視圖名 | 表別名.* |列名|表達(dá)式|IDENTITYCOL|ROWGUIDCOL AS 列別名 | 列別名 = 表達(dá)式 ,

7、...n ,14,2、基本數(shù)據(jù)類型,使用SQL Server創(chuàng)建數(shù)據(jù)庫(kù)中的表時(shí),要對(duì)表中的每一列定義一種數(shù)據(jù)類型,數(shù)據(jù)類型決定了表中的某一列可以存放什么數(shù)據(jù)。除了定義表需要指定數(shù)據(jù)類型外,使用視圖、存儲(chǔ)過(guò)程、變量、函數(shù)等都需要用到數(shù)據(jù)類型。 SQL Server提供了豐富的系統(tǒng)定義的數(shù)據(jù)類型,用戶還可以在此基礎(chǔ)上自己定義數(shù)據(jù)類型。,15,2、數(shù)據(jù)類型,1. bigint類型 存儲(chǔ)大小: 8個(gè)字節(jié),取值范圍: -263263-1 2. int類型 存儲(chǔ)大小: 4個(gè)字節(jié),取值范圍: -231231-1 3. smallint類型 存儲(chǔ)大小: 2個(gè)字節(jié),取值范圍: -215215-1 4.

8、tinyint類型 存儲(chǔ)大小: 1個(gè)字節(jié),取值范圍: 0255,一、整形數(shù)據(jù)類型,16,2、數(shù)據(jù)類型,二、定點(diǎn)數(shù)據(jù)數(shù)據(jù)類型,定點(diǎn)數(shù)據(jù)類型用于表示定點(diǎn)實(shí)數(shù),包括numeric和decimal類型。 Numeric等價(jià)于decimal。 格式: decimal(p, s) a numeric(p, s) b 說(shuō)明: p: 表示精度,指定小數(shù)點(diǎn)左邊和右邊十進(jìn)制數(shù)字的最大位數(shù),取值在1到38之間,缺省值為18; s: 指定小數(shù)點(diǎn)右邊十進(jìn)數(shù)的最大位數(shù),取值在0到p之間,缺省值為0。 表示范圍: -1038+11038-1,17,2、數(shù)據(jù)類型,三、浮點(diǎn)數(shù)據(jù)類型,表示范圍: -1.79E+3081.7

9、9E+308,1. float類型 格式: float(n) 說(shuō)明: n: 尾數(shù)的位數(shù),具體如下表:,18,2、數(shù)據(jù)類型,三、浮點(diǎn)數(shù)據(jù),2. real類型 存儲(chǔ)大小: 4個(gè)字節(jié) 取值范圍: -3.40E+383.40E+38 精度: 7位 在SQL Server中,real的同義詞為float(24)。,19,2、數(shù)據(jù)類型,四、字符型數(shù)據(jù),分為Unicode字符數(shù)據(jù)類型和非Unicode字符數(shù)據(jù)類型. 非Unicode字符數(shù)據(jù)類型: 允許使用由特定字符集定義的字符。字符集在安裝SQL Server時(shí)選擇,不能更改。 非Unicode字符數(shù)據(jù)類型: char、varchar和text。

10、 Unicode字符數(shù)據(jù)類型: 可存儲(chǔ)由Unicode標(biāo)準(zhǔn)定義的任何字符,包含由不同字符集定義的所有字符。需要相當(dāng)于非Unicode數(shù)據(jù)類型兩倍的存儲(chǔ)空間。 Unicode字符數(shù)據(jù)數(shù)據(jù)類型包括: nchar、nvarchar和ntext。對(duì)于存儲(chǔ)來(lái)源于多種字符集的字符的列,可采用這些數(shù)據(jù)類型。,20,2、數(shù)據(jù)類型,四、字符型數(shù)據(jù),1. char類型 格式: char(n) 功能: 定義長(zhǎng)度為n個(gè)字節(jié)的固定長(zhǎng)度非Unicode字符數(shù)據(jù),每個(gè)字符占一個(gè)字節(jié)。 說(shuō)明: n:18000 存儲(chǔ)大小: n個(gè)字節(jié)(n個(gè)字符) 2. varchar類型 格式: varchar(n) 功能: 定義長(zhǎng)度最多為

11、n個(gè)字節(jié)的可變長(zhǎng)度非Unicode字符數(shù)據(jù),每個(gè)字符占一個(gè)字節(jié)。 說(shuō)明: n: 18000。 存儲(chǔ)大小: 輸入字符的實(shí)際長(zhǎng)度。長(zhǎng)度可為零,21,2、數(shù)據(jù)類型,四、字符型數(shù)據(jù),3. nchar類型 格式: nchar(n) 功能: 定義包含n個(gè)字符的固定長(zhǎng)度Unicode字符數(shù)據(jù) 說(shuō)明: n:14000 存儲(chǔ)大小: 2n個(gè)字節(jié) 4. nvarchar類型 格式: nvarchar(n) 功能:定義包含最多n個(gè)字符的可變長(zhǎng)度Unicode字符數(shù)據(jù) 說(shuō)明: n: 14000。 存儲(chǔ)大小:所輸入的字符實(shí)際個(gè)數(shù)的兩倍。長(zhǎng)度可以為零。,22,2、數(shù)據(jù)類型,四、字符型數(shù)據(jù),5. text類型 功

12、能: 用于存儲(chǔ)大塊的非Unicode字符,長(zhǎng)度可變,字符最大長(zhǎng)度 存儲(chǔ)空間等于輸入字符個(gè)數(shù) 6. ntext類型 功能:用于存儲(chǔ)大塊的Unicode字符,長(zhǎng)度可變,字符最大長(zhǎng)度 存儲(chǔ)空間等于輸入字符個(gè)數(shù)的兩倍,23,2、數(shù)據(jù)類型,五、日期與時(shí)間數(shù)據(jù)類型,日期和時(shí)間數(shù)據(jù)類型用于存儲(chǔ)日期和時(shí)間的結(jié)合體。包括datetime和smalldatetime兩種類型。 1. datetime類型 存儲(chǔ)大小: 8個(gè)字節(jié) 表示范圍:1753年1月1日零時(shí)9999年12月31日23時(shí)59分59秒。 例: 01/01/98 23:59:59 2000-5-29 12:30:48 2. small

13、datetime 存儲(chǔ)大小: 4個(gè)字節(jié) 表示范圍: 1900年1月1日2079年6月6日。 例: 2000/05/08 12:35 2000-05-29 12:35 2000-05-29,24,2、數(shù)據(jù)類型,六、 圖形(image)數(shù)據(jù)類型,image數(shù)據(jù)類型用于存儲(chǔ)可變長(zhǎng)度二進(jìn)制數(shù)據(jù),其長(zhǎng)度界于0到231-1個(gè)字節(jié)之間。,25,2、數(shù)據(jù)類型,七、 貨幣數(shù)據(jù)類型,貨幣數(shù)據(jù)類型包括money和smallmoney數(shù)據(jù)類型。貨幣數(shù)據(jù)存儲(chǔ)的精確度為四位小數(shù)。 1. money類型 存儲(chǔ)大小: 8個(gè)字節(jié) 表示范圍: -922,337,203,685,477.5808

14、+922,337,203,685,477.5807 2. smallmoney類型 存儲(chǔ)大小: 4個(gè)字節(jié) 表示范圍: -214,748.3648214,748.3647,26,2、數(shù)據(jù)類型,八、 位(bit)數(shù)據(jù)類型,bit數(shù)據(jù)類型的取值只有0和1,如果一個(gè)表中有不多于8個(gè)的bit列,這些列將作為一個(gè)字節(jié)存儲(chǔ)。如果表中有9到16個(gè)bit列,這些列將作為兩個(gè)字節(jié)存儲(chǔ)。更多列的情況依此類推。,27,2、數(shù)據(jù)類型,九、 二進(jìn)制數(shù)據(jù)類型,二進(jìn)制數(shù)據(jù)類型又可以分為binary和varbinary類型。,1. binary類型 格式: binary(n) 功能: 定義固定長(zhǎng)度的n個(gè)字節(jié)二進(jìn)制數(shù)據(jù),當(dāng)輸

15、入的二進(jìn)制數(shù)據(jù)長(zhǎng)度小于n時(shí),余下部分填充0。 說(shuō)明: n: 18000,28,2、數(shù)據(jù)類型,九、 二進(jìn)制數(shù)據(jù)類型,2. varbinary類型 格式: varbinary(n) 功能: 定義n個(gè)字節(jié)可變長(zhǎng)度二進(jìn)制數(shù)據(jù)。 說(shuō)明: n: 18000 存儲(chǔ)大小: 為實(shí)際輸入數(shù)據(jù)長(zhǎng)度加4個(gè)字節(jié),而不是n個(gè)字節(jié)。輸入的數(shù)據(jù)長(zhǎng)度可能為0字節(jié)。 如果在數(shù)據(jù)定義或變量定義語(yǔ)句中使用時(shí)沒(méi)有指定n,則默認(rèn)長(zhǎng)度n為1。如果在CAST函數(shù)中使用時(shí)沒(méi)有指定n,則默認(rèn)長(zhǎng)度n為30。,29,2、數(shù)據(jù)類型,十、 其他數(shù)據(jù)類型,1. timestamp類型(時(shí)間戳數(shù)據(jù)類型) 存儲(chǔ)大小: 8個(gè)字節(jié)。 時(shí)間戳類型的數(shù)據(jù)用于提供

16、數(shù)據(jù)庫(kù)范圍內(nèi)的惟一值,反映數(shù)據(jù)庫(kù)中數(shù)據(jù)修改的相對(duì)順序,相當(dāng)于一個(gè)單調(diào)上升的計(jì)數(shù)器。當(dāng)表中的某列定義為timestamp類型時(shí),在對(duì)表中某行進(jìn)行修改或添加行時(shí),相應(yīng)timestamp類型列的值會(huì)自動(dòng)被更新。,30,2、數(shù)據(jù)類型,十、 其他數(shù)據(jù)類型,2. uniqueidentifier類型 用于存儲(chǔ)一個(gè)16字節(jié)長(zhǎng)的二進(jìn)制數(shù)據(jù),它是SQL Server根據(jù)計(jì)算機(jī)網(wǎng)絡(luò)適配器和CPU時(shí)鐘產(chǎn)生的全局惟一標(biāo)識(shí)符(Globally Unique Identifier,GUID),該數(shù)字可以通過(guò)調(diào)用SQL Server的NEWID函數(shù)獲得。 GUID是一個(gè)唯一的二進(jìn)制數(shù)字,世界上的任何兩臺(tái)計(jì)算機(jī)都不會(huì)生成

17、重復(fù)的GUID值。GUID主要用于在擁有多個(gè)節(jié)點(diǎn)、多臺(tái)計(jì)算機(jī)的網(wǎng)絡(luò)中,分配必須具有唯一性的標(biāo)識(shí)符。,31,2、數(shù)據(jù)類型,十、 其他數(shù)據(jù)類型,3. sql_variant類型 用于存儲(chǔ)除text、ntext、image、timestamp和sql_variant外的其它任何合法的數(shù)據(jù)。 4. table類型 用于存儲(chǔ)對(duì)表或者視圖處理后的結(jié)果集。這種新的數(shù)據(jù)類型使得用變量就可以存儲(chǔ)一個(gè)表,從而使函數(shù)或過(guò)程返回查詢結(jié)果更加方便、快捷。 5. cursor類型 cursor類型是變量或存儲(chǔ)過(guò)程 的OUTPUT 參數(shù)的一種數(shù)據(jù)類型,這些參數(shù)包含對(duì)游標(biāo)的引用。,32,2、數(shù)據(jù)類型,十一、 用戶自己定

18、義的數(shù)據(jù)類型,33,3、常量與變量,一、 常量,常量也稱為標(biāo)量值,是表示一個(gè)特定數(shù)據(jù)值的符號(hào)。常量的格式取決于它所表示的值的數(shù)據(jù)類型。,1. 普通字符串常量 字符串常量用單引號(hào)括起來(lái)。如果要在字符串中包含單引號(hào),則可以使用連續(xù)的兩個(gè)單引號(hào)來(lái)表示。例如: Chinese Process X is 50% complete. The level for job_id: %d should be between %d and %d. (空字符串) Iam a student,34,3、常量與變量,一、 常量,2、 Unicode 字符串常量 對(duì)于Unicode字符串的格式,需要在前面加一

19、個(gè)N標(biāo)識(shí)符,N前綴必須是大寫(xiě)字母。例如: Michl是字符串常量 NMichl是Unicode字符常量 Unicode常量被解釋為Unicode數(shù)據(jù)。Unicode 數(shù)據(jù)中的每個(gè)字符都使用兩個(gè)字節(jié)進(jìn)行存儲(chǔ),而普通字符數(shù)據(jù)中的每個(gè)字符則使用一個(gè)字節(jié)進(jìn)行存儲(chǔ)。,35,3、常量與變量,一、 常量,3. 二進(jìn)制數(shù)常量 二進(jìn)制常量使用0 x作為前輟,后面跟隨十六進(jìn)制數(shù)字字符串。例如: 0 xAE 0 x12Ef 0 x69048AEFDD010E 0 x(空二進(jìn)制常量),36,3、常量與變量,一、 常量,4. bit常量 bit常量使用數(shù)字0或1表示。如果使用一個(gè)大于1的數(shù)字,它將被轉(zhuǎn)

20、換為1。 5. datetime常量 datetime常量使用單引號(hào)括起來(lái)的特定格式的字符日期值表示。例如: April 15, 1998 15 April, 1998 980415 04/15/98 14:30:24 04:24 PM,37,3、常量與變量,一、 常量,6. 整型常量 由正、負(fù)號(hào)和數(shù)字09組成,正號(hào)可以省略。 例如: 1894 2 +145345234 -2147483648 7. decimal常量 由正、負(fù)號(hào)、小數(shù)點(diǎn)、數(shù)字09組成,正號(hào)可以省略。 例如: 1894.1204 2.0 +145345234.2234 -2147483648.

21、10,38,3、常量與變量,一、 常量,8. float和real常量 使用科學(xué)記數(shù)法表示。 例如: 101.5E5 0.5E-2 +123E-3 -12E5 9. money常量 以可選小數(shù)點(diǎn)和可選貨幣符號(hào)作為前綴的一串?dāng)?shù)字??梢詭д?、負(fù)號(hào)。 例如: $12 $542023.14 -$45.56 +$423456.99,39,3、常量與變量,二、變量,變量是可以保存特定類型的單個(gè)數(shù)據(jù)值的對(duì)象,SQL Server的變量分為兩種:用戶自己定義的局部變量和系統(tǒng)提供的全局變量。,1、局部變量 局部變量的作用范圍僅限制在程序的內(nèi)部。常用來(lái)保存臨時(shí)數(shù)據(jù)。例如,可以使用局部變量保

22、存表達(dá)式的計(jì)算結(jié)果,作為計(jì)數(shù)器保存循環(huán)執(zhí)行的次數(shù),或者用來(lái)保存由存儲(chǔ)過(guò)程返回的數(shù)據(jù)值。,40,3、常量與變量,二、變量,1. 局部變量的定義 格式: DECLARE 局部變量名 數(shù)據(jù)類型 ,n 說(shuō)明: 局部變量名: 必須以開(kāi)頭,符合標(biāo)識(shí)符的命名規(guī)則 數(shù)據(jù)類型: 系統(tǒng)定義的數(shù)據(jù)類型;用戶定義數(shù)據(jù)類型。不能是text、ntext或image數(shù)據(jù)類型。 局部變量定義后初始值為NULL。,41,3、常量與變量,二、變量,1. 局部變量的定義,【例】定義變量MyCounter為int類型: DECLARE MyCounter int 【例】定義變量LastName為nvarchar(30)類型,定義

23、變量FirstName為nvarchar(20)類型,定義變量State為nchar(2)類型: DECLARE LastName nvarchar(30), FirstName nvarchar(20),State nchar(2),42,3、常量與變量,二、變量,2. 局部變量的賦值 (1)用SET語(yǔ)句給局部變量賦值 格式: SET 局部變量名 = 表達(dá)式 【例4-6】定義局部變量myvar,并為其賦值,最后顯示myvar的值。 DECLARE myvar char(20) SET myvar = This is a test --用SET賦值 PRINT myvar -

24、-用PRINT語(yǔ)句顯示,43,3、常量與變量,二、變量,(2)用SELECT語(yǔ)句給局部變量賦值: 格式: SELECT 局部變量名 = 表達(dá)式,n 【例4-7】定義局部變量myvar1和myvar2,并為它們賦值,最后顯示myvar1和myvar2的值: DECLARE myvar1 char(20),myvar2 char(20) SELECT myvar1 = Hello!, myvar2 = How are you! --用SELECT賦值 SELECT myvar1, myvar2 --用SELECT顯示,44,3、常量與變量,二、變量,2、全局變量 是SQL Server系統(tǒng)自

25、帶的變量,特點(diǎn)如下: 全局變量不是由用戶的程序定義的,它們是SQL Server系統(tǒng)在服務(wù)器級(jí)定義的,作用范圍是一個(gè)服務(wù)器內(nèi)都有效。 全局變量通常用來(lái)存儲(chǔ)一些配置設(shè)定值和統(tǒng)計(jì)數(shù)據(jù)。用戶可以在程序中用全局變量來(lái)測(cè)試系統(tǒng)的設(shè)定值或者是Transact-SQL命令執(zhí)行后的狀態(tài)值。,45,3、常量與變量,二、變量,用戶只能使用預(yù)先定義的全局變量,不能自己定義全局變量。 全局變量,必須以標(biāo)記符“”開(kāi)頭。 局部變量的名稱不能與全局變量的名稱相同,否則會(huì)出現(xiàn)不可預(yù)測(cè)的結(jié)果。 任何程序均可以隨時(shí)引用全局變量。,例如: VERSION用于返回SQL Server當(dāng)前安裝的日期、版本和處理器類型;CONNECTI

26、ONS用于返回自上次啟動(dòng)SQL Server以來(lái)連接或試圖連接的次數(shù);LANGUAGE用于返回當(dāng)前使用的語(yǔ)言名,46,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,SQL Server運(yùn)算符有以下幾類: 算術(shù)運(yùn)算符 字符串串聯(lián)運(yùn)算符 賦值運(yùn)算符 關(guān)系運(yùn)算符 邏輯運(yùn)算符 位運(yùn)算符 一元運(yùn)算符,運(yùn)算符:對(duì)常量或變量進(jìn)行某種運(yùn)算的符號(hào);由運(yùn)算符與變量常量構(gòu)成的式子稱為表達(dá)式,47,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,1、算術(shù)運(yùn)算符: +、、*、/、%(取余) %: 用于返回一個(gè)整數(shù)除以另一個(gè)整數(shù)的余數(shù)。 例如: 13 % 5 = 3,48,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,2、字符串串聯(lián)運(yùn)算符: + 作用: 將兩個(gè)字

27、符串串聯(lián)起來(lái),構(gòu)成字符串表達(dá)式。 例如: abc + def 結(jié)果為 abcdef 123 + 456 結(jié)果為 123456,49,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,3、賦值運(yùn)算符: = 例如: DECLARE MyCounter int SET MyCounter = 1,50,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,4、關(guān)系運(yùn)算符: = = != ! 作用: 比較兩個(gè)表達(dá)式的大小。 比較結(jié)果: 布爾值TRUE、FALSE、UNKNOWN TRUE:表示表達(dá)式的結(jié)果為真 FALSE:表示表達(dá)式的結(jié)果為假 UNKNOWN: 當(dāng)SET ANSI_NULLS為ON時(shí),帶有一個(gè)或兩個(gè)NULL

28、表達(dá)式的比較運(yùn)算返回UNKNOWN。 當(dāng)SET ANSI_NULLS為OFF時(shí),上述規(guī)則同樣適用,但當(dāng)兩個(gè)表達(dá)式都為NULL時(shí),返回結(jié)果為T(mén)RUE。例如,NULL = NULL返回TRUE。,51,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,5、邏輯運(yùn)算符: NOT AND OR 作用:對(duì)具有布爾值的表達(dá)式進(jìn)行運(yùn)算。 運(yùn)算結(jié)果: TRUE、FALSE。 NOT: 一元運(yùn)算符,對(duì)布爾表達(dá)式的值取反 AND: 只有兩個(gè)布爾表達(dá)式的值都為T(mén)RUE,運(yùn)算結(jié)果才為T(mén)RUE,否則結(jié)果為FALSE。 OR: 如果兩個(gè)布爾表達(dá)式中的一個(gè)為T(mén)RUE,那么運(yùn)算結(jié)果為T(mén)RUE。只有兩個(gè)布爾表達(dá)式都為FALSE,運(yùn)算結(jié)果才為FA

29、LSE。,52,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,例: NOT (3 8) 結(jié)果為T(mén)RUE (3 8) AND (5 8) Or (5 < 6) 結(jié)果為T(mén)RUE,53,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,6、位運(yùn)算符: & | 作用: 在兩個(gè)整型表達(dá)式之間執(zhí)行按位操作 【例4-8】判斷以下各打印語(yǔ)句的打印結(jié)果。 (1)PRINT 2 & 3 10 & 11,結(jié)果為二進(jìn)制10,即打印2。 (2)PRINT 13 | 24 01101 | 11000,結(jié)果為二進(jìn)制11101,即打印29。 (3)PRINT 13 24 01101 11000,結(jié)果為二進(jìn)制10101,結(jié)果為21。,5

30、4,4、運(yùn)算符與表達(dá)式,一、運(yùn)算符,7一元運(yùn)算符: + - (按位邏輯非) 作用: 只對(duì)一個(gè)表達(dá)式執(zhí)行操作,55,4、運(yùn)算符與表達(dá)式,二、運(yùn)算符的優(yōu)先順序,1. +(正)、(負(fù))、(按位NOT邏輯非) 2. *(乘)、/(除)、%(模) 3. +(加)、(+ 串聯(lián))、(減) 4. =, , =, , !=, !, !<( 關(guān)系運(yùn)算符) 5. (位異或)、&(位與)、|(位或) 6. NOT 7. AND 8. ALL、ANY、BETWEEN、IN、LIKE、OR、SOME 9. =(賦值),56,5、流程控制語(yǔ)句,流程控制語(yǔ)句用于控制Transact-SQL語(yǔ)句、語(yǔ)句塊和存儲(chǔ)過(guò)程的執(zhí)行流程。

31、如果不使用流程控制語(yǔ)句,則各Transact-SQL語(yǔ)句按其出現(xiàn)的先后順序執(zhí)行。使用流程控制語(yǔ)句可以按需要控制語(yǔ)句的順序。,一、流程控制語(yǔ)句的作用,57,5、流程控制語(yǔ)句,一、 BEGINEND語(yǔ)句,BEGINEND語(yǔ)句用于將多個(gè)Transact-SQL語(yǔ)句定義成一個(gè)語(yǔ)句塊。語(yǔ)句塊可以在程序中視為一個(gè)單元處理。BEGINEND語(yǔ)句的語(yǔ)法如下: BEGIN sql語(yǔ)句|語(yǔ)句塊 END 其中,sql語(yǔ)句為一條Transact-SQL語(yǔ)句;語(yǔ)句塊為用BEGIN和END定義的語(yǔ)句塊。可以看出,在一個(gè)語(yǔ)句塊中可以包含另一個(gè)語(yǔ)句塊。,58,5、流程控制語(yǔ)句,二、 IFELSE語(yǔ)句,IFELSE語(yǔ)

32、句的語(yǔ)法如下: IF 布爾表達(dá)式 sql語(yǔ)句1 | 語(yǔ)句塊1 ELSE sql語(yǔ)句2 | 語(yǔ)句塊2 布爾表達(dá)式: 返回TRUE或FALSE的表達(dá)式; sql語(yǔ)句: 一條Transact-SQL語(yǔ)句; 語(yǔ)句塊: 用BEGIN和END定義的語(yǔ)句組。 功能: 當(dāng)布爾表達(dá)式的值為T(mén)RUE時(shí),執(zhí)行sql語(yǔ)句1或語(yǔ)句塊1;當(dāng)布爾表達(dá)式的值為FALSE時(shí),執(zhí)行sql語(yǔ)句2或語(yǔ)句塊2。如果省略ELSE部分,則表示當(dāng)布爾表達(dá)式的值為FALSE時(shí)不執(zhí)行任何操作。,59,5、流程控制語(yǔ)句,二、 IFELSE語(yǔ)句,【例4-15】已知pubs數(shù)據(jù)庫(kù)的圖書(shū)信息表titles中,表示書(shū)價(jià)的列為price,表

33、示圖書(shū)種類的列為type,表示書(shū)名的列為title。 編程序?qū)崿F(xiàn):如果mod_cook類圖書(shū)的平均價(jià)格大于$15,就顯示文本: Average title price is more than $15;否則給出提示“The following titles are excellent mod_cook books:”并列出相應(yīng)的書(shū)名。,60,5、流程控制語(yǔ)句,二、 IFELSE語(yǔ)句,代碼如下: USE pubs IF (SELECT AVG(price) FROM titles WHERE type = mod_cook) < $15 BEGIN PRINT The following t

34、itles are excellent mod_cook books: PRINT SELECT title FROM titles WHERE type=mod_cook END ELSE PRINT Average title price is more than $15.,61,5、流程控制語(yǔ)句,三、 CASE語(yǔ)句,1. 簡(jiǎn)單CASE語(yǔ)句 CASE 輸入表達(dá)式 WHEN when_表達(dá)式 THEN 結(jié)果表達(dá)式 ...n ELSE 結(jié)果表達(dá)式 END 功能: 計(jì)算輸入表達(dá)式的值,依次與每個(gè)WHEN子句中的when_表達(dá)式進(jìn)行比較,直到發(fā)現(xiàn)第一個(gè)與輸入表達(dá)式相

35、等的表達(dá)式時(shí),便返回該WHEN子句的THEN后面所指定的結(jié)果表達(dá)式。如果不存在與輸入表達(dá)式相等的when_表達(dá)式,則當(dāng)指定ELSE子句時(shí)將返回ELSE字句指定的結(jié)果表達(dá)式,若沒(méi)有指定ELSE子句,則返回NULL值。,62,5、流程控制語(yǔ)句,三、 CASE語(yǔ)句,【例4-16】將pubs數(shù)據(jù)庫(kù)中的圖書(shū)信息表(titles)中的各種圖書(shū)類型(type列)顯示為全稱。 USE pubs SELECT title, tpye = CASE type WHEN popular_comp THEN Popular Computing WHEN mod_cook THEN Modern Cookin

36、g WHEN business THEN Business WHEN psychology THEN Psychology WHEN trad_cook THEN Traditional Cooking ELSE Not yet categorized END, price FROM titles,63,5、流程控制語(yǔ)句,三、 CASE語(yǔ)句,2. CASE搜索語(yǔ)句 CASE WHEN 布爾表達(dá)式 THEN 結(jié)果表達(dá)式 ...n ELSE 結(jié)果表達(dá)式 END 功能: 依次計(jì)算每個(gè)WHEN子句中的布爾表達(dá)式,返回第一個(gè)值為T(mén)RUE的布爾表達(dá)式之后對(duì)應(yīng)的的結(jié)

37、果表達(dá)式值。如果每一個(gè)WHEN子句之后的布爾表達(dá)式為都不為T(mén)RUE,則當(dāng)指定ELSE子句時(shí),返回ELSE子句中的結(jié)果表達(dá)式的值,若沒(méi)有指定ELSE子句,則返回NULL值。,64,5、流程控制語(yǔ)句,三、 CASE語(yǔ)句,【例4-17】對(duì)pubs數(shù)據(jù)庫(kù)中的各種價(jià)位的圖書(shū)給予不同的提示。 USE pubs SELECT title, price, 價(jià)格類別 = CASE WHEN price IS NULL THEN Not yet priced WHEN price = 10 and price < 20 THEN Coffee Table Title ELSE Expensi

38、ve book! END FROM titles,65,5、流程控制語(yǔ)句,四、 WHILE語(yǔ)句,格式: WHILE 布爾表達(dá)式 sql語(yǔ)句 | 語(yǔ)句塊 ,功能:從WHILE語(yǔ)句開(kāi)始,計(jì)算布爾表達(dá)式的值,當(dāng)布爾表達(dá)式的值為T(mén)RUE時(shí),執(zhí)行循環(huán)體,然后返回WHILE語(yǔ)句,再計(jì)算布爾表達(dá)式的值,如果仍為T(mén)RUE,則再執(zhí)行循環(huán)體,,直到某次布爾表達(dá)式的值為FALSE時(shí),則不執(zhí)行循環(huán)體,而直接執(zhí)行WHILE循環(huán)之后的其他語(yǔ)句。,66,5、流程控制語(yǔ)句,四、 WHILE語(yǔ)句,在循環(huán)體中可以包含語(yǔ)句: BREAK語(yǔ)句 執(zhí)行BREAK語(yǔ)句將完全跳出循環(huán),結(jié)束WHILE循環(huán)的執(zhí)行。 CONTINUE語(yǔ)句 執(zhí)行

39、CONTINUE語(yǔ)句將使循環(huán)跳過(guò)CONTINUE語(yǔ)句后面的語(yǔ)句,回到WHILE循環(huán)的第一條語(yǔ)句。,67,5、流程控制語(yǔ)句,四、 WHILE語(yǔ)句,【例4-18】求1到100之間的數(shù)的和。 DECLARE i smallint,sum smallint SET i=1 SET sum=0 WHILE i<=100 BEGIN SET sum=sum+i SET i=i+1 END PRINT 1 到100之間的數(shù)的和為+str(sum),68,5、流程控制語(yǔ)句,三、 WHILE語(yǔ)句,求1到100之間的奇數(shù)的和 DECLARE i smallint,sum smallint SET i=0 SE

40、T sum=0 WHILE i=0 BEGIN SET i=i+1 IF i<=100 IF (i % 2)=0 CONTINUE ELSE SET sum=sum+i ELSE BEGIN PRINT 1 到100之間的奇數(shù)和為+str(sum) BREAK END END,69,5、流程控制語(yǔ)句,五、 GOTO語(yǔ)句,格式: GOTO 標(biāo)號(hào) 標(biāo)號(hào): 功能:用于改變程序的執(zhí)行流程,使程序直接跳到標(biāo)有標(biāo)號(hào)的位置處繼續(xù)執(zhí)行,而位于GOTO語(yǔ)句和標(biāo)號(hào)之間的語(yǔ)句將不會(huì)被執(zhí)行。 說(shuō)明: 標(biāo)號(hào)必須是一個(gè)合法的標(biāo)識(shí)符。,70,5、流程控制語(yǔ)句,五、 GO

41、TO語(yǔ)句,【例4-19】利用GOTO語(yǔ)句求1+2+3++50。 DECLARE sum int, count int SET sum=0 SET count=1 label_1: SET sum=sum+count SET count=count+1 IF count<=50 GOTO label_1 PRINT str(count)+str(sum),71,5、流程控制語(yǔ)句,六WAITFOR語(yǔ)句,格式: WAITFOR DELAY 時(shí)間 | TIME 時(shí)間 功能: 用于暫時(shí)停止SQL語(yǔ)句、語(yǔ)句塊或者存儲(chǔ)過(guò)程等的執(zhí)行,直到所設(shè)定的時(shí)間已過(guò)或者所設(shè)定的時(shí)間已到才繼續(xù)執(zhí)行。 說(shuō)明: DELAY:

42、 使用該關(guān)鍵字表示其后的時(shí)間應(yīng)為時(shí)間間隔,該時(shí)間間隔最長(zhǎng)可達(dá)24小時(shí). TIME: 使用該關(guān)鍵字表示其后的時(shí)間用于指示要等待到的時(shí)間點(diǎn),格式為:hh: mm: ss。,72,5、流程控制語(yǔ)句,六WAITFOR語(yǔ)句,【例4-20】在一分鐘以后打印“HELLO”,代碼如下: BEGIN WAITFOR DELAY 00:00:30 PRINT HELLO END 【例4-21】在晚上10:20時(shí)打印“HELLO”。 BEGIN WAITFOR TIME 22: 20 PRINT HELLO END,73,5、流程控制語(yǔ)句,七 RETURN語(yǔ)句,格式: RETURN 整數(shù)表達(dá)式 功能: 用于無(wú)條件

43、地終止一個(gè)查詢、存儲(chǔ)過(guò)程或者批處理,當(dāng)執(zhí)行RETURN語(yǔ)句時(shí),位于RETURN語(yǔ)句之后的程序?qū)⒉粫?huì)被執(zhí)行。 說(shuō)明: RETURN: 在存儲(chǔ)過(guò)程中可以在RETURN后面使用一個(gè)具有整數(shù)值的表達(dá)式,用于向調(diào)用過(guò)程或應(yīng)用程序返回整型值。,74,5、流程控制語(yǔ)句,七 RETURN語(yǔ)句,例子: BEGIN WAITFOR DELAY 00:00:30 RETURN PRINT HELLO END,75,6、注釋,一 注釋的作用,注釋用于對(duì)代碼行或代碼段進(jìn)行說(shuō)明,或暫時(shí)禁用某些代碼行。注釋是程序代碼中不執(zhí)行的文本字符串。使用注釋對(duì)代碼進(jìn)行說(shuō)明,可以使程序代碼更易于理解和維護(hù)。注釋通常用于說(shuō)明代碼的功能,描

44、述復(fù)雜計(jì)算或解釋編程方法,記錄程序名稱、作者姓名、主要代碼更改的日期等。 向代碼中添加注釋時(shí),需要用一定的字符進(jìn)行標(biāo)識(shí)。SQL Server支持兩種類型的注釋字符。,76,6、注釋,二 注釋的方法,(1) -- : 這種注釋字符可與要執(zhí)行的代碼處在同一行,也可另起一行。從雙連字符開(kāi)始到行尾均表示注釋。對(duì)于多行注釋,必須在每個(gè)注釋行的開(kāi)始使用雙連字符。,【例4-22】使用雙連字符給程序添加注釋。 -- 打開(kāi)pubs數(shù)據(jù)庫(kù) USE pubs --從titles表中選擇所有的行和列 --按title_id列的升序排序 SELECT * FROM titles ORDER BY title_id A

45、SC,77,6、注釋,二 注釋的方法,(2) /* ... */ : 可與代碼處在同一行,也可另起一行,甚至用在可執(zhí)行代碼內(nèi)。從/*到*/之間的全部?jī)?nèi)容均為注釋部分。對(duì)于多行注釋,必須使用/*開(kāi)始注釋,使用*/結(jié)束注釋。注釋行上不應(yīng)出現(xiàn)其它注釋字符。,【例4-23】使用/* ... */給程序添加注釋。 /*打開(kāi)pubs數(shù)據(jù)庫(kù)*/ USE pubs /*從titles表中選擇所有的行和列 按title_id列的升序排序*/ SELECT * FROM titles ORDER BY title_id ASC,78,7、函數(shù),一、函數(shù)的定義,函數(shù)是一個(gè)Transact-SQL語(yǔ)句的集合,每個(gè)函數(shù)

46、用于完成某種特定的功能,可以在其他的Transact-SQL語(yǔ)句中直接使用(調(diào)用)。SQL Server 2000支持兩種類型的函數(shù): (1)內(nèi)置函數(shù):SQL Server內(nèi)部已經(jīng)定義好的函數(shù),用戶只能按照內(nèi)置函數(shù)定義好的方式進(jìn)行使用,而不能對(duì)內(nèi)置函數(shù)進(jìn)行修改。 (2)用戶定義函數(shù):用戶使用CREATE FUNCTION語(yǔ)句自己創(chuàng)建的函數(shù)。,79,7、函數(shù),一、函數(shù)的定義,T-SQL提供了用戶定義函數(shù)創(chuàng)建語(yǔ)句CREATE FUNCTION。其語(yǔ)法格式為: CREATE FUNCTION schema_name. function_name /* 定義函數(shù)名 */ ( parameter_n

47、ame AS type_schema_name. parameter_data_type /* 定義形參 */ = default /* 定義默認(rèn)值 */ ,...n ) RETURNS return_data_type /* 定義函數(shù)返回?cái)?shù)據(jù)類型 */ WITH ,...n /* 定義函數(shù)選項(xiàng) */ AS BEGIN function_body /* 定義函數(shù)主體 */ RETURN scalar_expression /* 定義函數(shù)返回值 */ END,80,7、函數(shù),二、函數(shù)的調(diào)用,調(diào)用函數(shù)的格式: 函數(shù)名(參數(shù)表) 說(shuō)明: 參數(shù): 0多個(gè)。當(dāng)有多個(gè)參

48、數(shù)時(shí),各參數(shù)之間要用逗號(hào)隔開(kāi)。 圓括號(hào)不能省略,即使沒(méi)有參數(shù)也是如此。 調(diào)用位置:可在語(yǔ)句中,也可在表達(dá)式中。,81,7、函數(shù),三、內(nèi)置函數(shù)的分類,(1)行集函數(shù):返回的結(jié)果是一個(gè)虛擬表對(duì)象,該對(duì)象可在Transact-SQL語(yǔ)句中用作表來(lái)引用。 例如,使用OPENQUERY函數(shù)執(zhí)行一個(gè)分布式查詢,以便從服務(wù)器OracleSvr中提取表student中的記錄。 SELECT * FROM OPENQUERY(OracleSvr, SELECT name, id FROM student) (2)聚合函數(shù):對(duì)一組值進(jìn)行統(tǒng)計(jì)計(jì)算并返回一個(gè)單一的值。 例如,設(shè)當(dāng)前數(shù)據(jù)庫(kù)擁有一個(gè)員工工資表emplo

49、yee,其中有一個(gè)工資列salary,要統(tǒng)計(jì)所有員工的工資總和: SELECT SUM(salary) FROM employee (3)標(biāo)量函數(shù):用于對(duì)傳遞給它的一個(gè)或者多個(gè)參數(shù)值進(jìn)行處理和計(jì)算,并返回一個(gè)單一的值。,82,7、函數(shù),四、常用聚合函數(shù)舉例,聚合函數(shù)用于對(duì)數(shù)據(jù)庫(kù)表中的一列或幾列數(shù)據(jù)進(jìn)行統(tǒng)計(jì)匯總,常用于查詢語(yǔ)句中。,83,7、函數(shù),四、常用聚合函數(shù)舉例,【例4-13】設(shè)某學(xué)生數(shù)據(jù)庫(kù)中有一個(gè)“學(xué)生成績(jī)”表,該表包含的列有:學(xué)號(hào)、姓名、數(shù)學(xué)成績(jī)、英語(yǔ)成績(jī)。其中,數(shù)學(xué)成績(jī)和英語(yǔ)成績(jī)列為smallint類型,使用聚合函數(shù)實(shí)現(xiàn)以下各功能。 (1)求所有學(xué)生的數(shù)學(xué)平均成績(jī)和英語(yǔ)平均成績(jī)。

50、(2)統(tǒng)計(jì)數(shù)學(xué)成績(jī)大于80分的學(xué)生人數(shù)。 (3)統(tǒng)計(jì)學(xué)生總?cè)藬?shù) (4)求最高數(shù)學(xué)成績(jī),最低數(shù)學(xué)成績(jī) (5)求所有學(xué)生的數(shù)學(xué)總成績(jī)和英語(yǔ)總成績(jī)。,84,7、函數(shù),四、常用聚合函數(shù)舉例,實(shí)現(xiàn)以上各功能的查詢語(yǔ)句分別如下: (1)SELECT AVG(數(shù)學(xué)成績(jī)),AVG(英語(yǔ)成績(jī)) FROM 學(xué)生成績(jī) (2)SELECT COUNT(數(shù)學(xué)成績(jī)) FROM 學(xué)生成績(jī) WHERE 數(shù)學(xué)成績(jī)80 (3)SELECT COUNT(*) FROM 學(xué)生成績(jī) (4)SELECT MAX(數(shù)學(xué)成績(jī)),MIN(數(shù)學(xué)成績(jī)) FROM 學(xué)生成績(jī) (5)SELECT SUM(數(shù)學(xué)成績(jī)),SUM(英語(yǔ)成績(jī))

51、 FROM 學(xué)生成績(jī),85,7、函數(shù),五、常用標(biāo)量函數(shù)舉例,1、數(shù)學(xué)函數(shù),2、字符串函數(shù),3、日期和時(shí)間函數(shù),4、轉(zhuǎn)換函數(shù),86,7、函數(shù),六、常用轉(zhuǎn)換函數(shù)舉例,1、轉(zhuǎn)換函數(shù)的作用,一般情況下,SQL Server會(huì)自動(dòng)處理某些數(shù)據(jù)類型的轉(zhuǎn)換。例如,如果比較smallint和int表達(dá)式、或不同長(zhǎng)度的char表達(dá)式,SQL Server可以將它們自動(dòng)轉(zhuǎn)換成相同的類型,這種轉(zhuǎn)換稱為隱性轉(zhuǎn)換。 無(wú)法由SQL Server自動(dòng)轉(zhuǎn)換的或者是SQL Server自動(dòng)轉(zhuǎn)換的結(jié)果不符合預(yù)期結(jié)果的,就需要使用轉(zhuǎn)換函數(shù)做顯式轉(zhuǎn)換。SQL Server的提供了兩個(gè)轉(zhuǎn)換函數(shù):CAST和CONVERT。,87,7、函數(shù),六、常用轉(zhuǎn)換函數(shù)舉例,2、常用轉(zhuǎn)換函數(shù),1. CAST函數(shù) 用于將某種數(shù)據(jù)類型的表達(dá)式顯式轉(zhuǎn)換為另一種數(shù)據(jù)類型。 格式: CAST(表達(dá)式 AS 數(shù)據(jù)類型) 2. CONVERT函數(shù) 用于將某種數(shù)據(jù)類型的表達(dá)式顯式轉(zhuǎn)換為另一種數(shù)據(jù)類型,在將日期時(shí)間類型的數(shù)據(jù)轉(zhuǎn)換為字符類型的數(shù)據(jù)時(shí),可以指定轉(zhuǎn)換后的字符樣式。 格式: CONVERT(數(shù)據(jù)類型(長(zhǎng)度),表達(dá)式,樣式),88,本章完,

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!

五月丁香婷婷狠狠色,亚洲日韩欧美精品久久久不卡,欧美日韩国产黄片三级,手机在线观看成人国产亚洲