




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、會計(jì)學(xué)1數(shù)據(jù)庫數(shù)據(jù)庫 TSQL程序設(shè)計(jì)程序設(shè)計(jì)(chn x sh j)基礎(chǔ)基礎(chǔ)第一頁,共59頁。4.1 SQL語言(yyn)和T-SQL語言(yyn)1.SQL語言簡介(jin ji) SQL( Structure Query Language)語言是關(guān)系型數(shù)據(jù)庫標(biāo)準(zhǔn)應(yīng)用語言。 SQL語言不同于C、C#這樣的程序設(shè)計(jì)語言,只是數(shù)據(jù)庫能識別的指令。 例如,在VB.NET程序中要得到SQL Server數(shù)據(jù)庫表中的記錄,可以在VB.NET程序中編寫SQL查詢語句,然后發(fā)送到數(shù)據(jù)庫中。數(shù)據(jù)庫根據(jù)查詢的SQL語句進(jìn)行查詢,在把查詢的結(jié)果返回給VB.NET程序。 第1頁/共59頁第二頁,共59頁。2.T
2、ransact- SQL語言簡介 Transact- SQL(簡寫為T-SQL)是對標(biāo)準(zhǔn)SQL的擴(kuò)展。 T-SQL語言主要組成部分?jǐn)?shù)據(jù)定義語言(DDL,Data Definition Language)數(shù)據(jù)操縱語言(DML,Data Manipularion Language)數(shù)據(jù)控制(kngzh)語言(DCL,Data Control Language)系統(tǒng)存儲過程(System Stored Procedure)附加的語言元素第2頁/共59頁第三頁,共59頁。數(shù)據(jù)定義語言DDL是指用來定義和管理數(shù)據(jù)庫以及數(shù)據(jù)庫中的各種對象的語句,這些語句包括CREATE創(chuàng)建 、ALTER修改和DROP刪除
3、等語句。數(shù)據(jù)操縱語言是指用來查詢、添加、修改和刪除數(shù)據(jù)庫中數(shù)據(jù)的語句,這些語句包括SELECT檢索數(shù)據(jù) 、INSERT添加記錄 、UPDATE修改記錄 、DELETE刪除記錄等。數(shù)據(jù)控制語言(DCL)是用來設(shè)置或者更改(gnggi)數(shù)據(jù)庫用戶或角色權(quán)限的語句,這些語句包括GRANT授予權(quán)限 、REVOKE分配權(quán)限等語句。第3頁/共59頁第四頁,共59頁。其它語言元素1 注釋2 變量(binling)3 運(yùn)算符4 函數(shù)5 流程控制語句 第4頁/共59頁第五頁,共59頁。3.T-SQL特點(diǎn)功能強(qiáng)大:集DDL DML DCL于一體語言簡潔,風(fēng)格統(tǒng)一(tngy),易學(xué)易懂:SQL語言接近英語,只用幾個(gè)
4、英文單詞的組合就能完成所有功能,因此初學(xué)者非常容易上手。既是自含式語言,又是嵌入式語言:作為自含式語言,SQL能夠獨(dú)立地用于聯(lián)機(jī)交互的使用方式。 當(dāng)作為嵌入式語言使用時(shí),SQL語句幾乎可以不加修改地嵌入到如VB、PB這樣的前端開發(fā)平臺上,利用前端工具的計(jì)算能力和SQL的數(shù)據(jù)庫操縱能力,可以快速地建立數(shù)據(jù)庫應(yīng)用程序。高度非過程化:用SQL語言進(jìn)行數(shù)據(jù)操作,只要提出“做什么”,而無須知道“怎么做”,SQL語句的實(shí)現(xiàn)過程由系統(tǒng)自動完成。第5頁/共59頁第六頁,共59頁。4.2 T-SQL的標(biāo)識符第6頁/共59頁第七頁,共59頁。合法(hf)標(biāo)識符:ABC、lili、VAR_X、#TBL_Y非法標(biāo)識符
5、:1AB、FROM第7頁/共59頁第八頁,共59頁。在SQL語句語法格式(g shi)中的一些約定符號:尖括號“”中的內(nèi)容為實(shí)際語義。中括號“ ”中的內(nèi)容為任選項(xiàng)。,. . .意思是“等等”,即前面的項(xiàng)可以重復(fù)。大括號“”與豎線“|”表明此處為選擇項(xiàng),在所列出的各項(xiàng)中僅需選擇一項(xiàng)。 例如: A | B | C | D 意思是A、B、C、D中取其一。 SQL中的數(shù)據(jù)項(xiàng)(包括列項(xiàng)、表和視圖)分隔符為“,”;其字符串常數(shù)的定界符用單引號“”表示。第8頁/共59頁第九頁,共59頁。在編寫SQL語句時(shí),遵從某種準(zhǔn)則以提高語句的可讀性,使其易于編輯,是很有好處的。 以下是一些通常的準(zhǔn)則:SQL語句對大小寫
6、不敏感 為了提高SQL語句的可讀性,子句開頭的關(guān)鍵字通常采用大寫形式。SQL語句可寫成一行或多行,習(xí)慣上每個(gè)子句占用(zhn yn)一行。關(guān)鍵字不能在行與行之間分開,并且很少采用縮寫形式。SQL語句的結(jié)束符為分號“;”,分號必須放在語句中的最后一個(gè)子句后面,但可以不在同一行。第9頁/共59頁第十頁,共59頁。4.3 T-SQL的數(shù)據(jù)類型第10頁/共59頁第十一頁,共59頁。位類型數(shù)據(jù) bit 位類型只能存放0、1和NULL(空值),一般用于邏輯判斷。 位類型數(shù)據(jù)占1位二進(jìn)制內(nèi)存,如果一個(gè)數(shù)據(jù)表中有8個(gè)以下的位類型字段,系統(tǒng)用一個(gè)字節(jié)(z ji)存儲所有這些字段,超過8個(gè)不足16個(gè)用2個(gè)字節(jié)(z
7、 ji)存放。 位類型數(shù)據(jù)輸入任意的非0值時(shí),都按1處理。第11頁/共59頁第十二頁,共59頁。、數(shù)值型數(shù)據(jù) SQL Server數(shù)值型數(shù)據(jù)共8種,整型4種,實(shí)型4種。整型數(shù)據(jù)類型的列一般存儲的是計(jì)數(shù)值、數(shù)量或年齡等。1字節(jié)型整數(shù) TinyInt 占1個(gè)字節(jié)固定長度內(nèi)存(ni cn),可存儲0-255范圍內(nèi)的任意無符號整數(shù)。2短整型整數(shù) smallInt 占2字節(jié)固定長度內(nèi)存(ni cn),最高位為符號位,可存儲-3276832767(-215215-1)的任意整數(shù)。第12頁/共59頁第十三頁,共59頁。3基本整型整數(shù) Int 或Integer 占4字節(jié)固定長度內(nèi)存,高位為符號位,可存儲-21
8、47483648-2147483647(-231+231-1)范圍內(nèi)的任意整數(shù)。4長整型整數(shù) Bigint 占8字節(jié)固定長度內(nèi)存,高位為符號位,可存儲-263到263-1范圍內(nèi)的任意整據(jù)。 注意:整型數(shù)據(jù)可以在較少字節(jié)里存儲精確的整型數(shù)字,存儲效率高,不可能出現(xiàn)小數(shù)的數(shù)據(jù)應(yīng)盡量(jnling)選用整數(shù)類型。 第13頁/共59頁第十四頁,共59頁。5精確小數(shù)(xiosh)型數(shù)據(jù) Numeric(p,s) p指定總位數(shù)(不含小數(shù)(xiosh)點(diǎn)),p的取值范圍1p38。即最多可達(dá)38位有效數(shù)字,不使用指數(shù)的科學(xué)記數(shù)法表示,但取值范圍必須在-1038到1038-1之間。 s指定其中的小數(shù)(xiosh
9、)位數(shù),s的取值范圍0sp。第14頁/共59頁第十五頁,共59頁。numeric型數(shù)據(jù)在數(shù)據(jù)表里可帶identity關(guān)鍵字(自動增長(zngzhng)字段)。 numeric型數(shù)據(jù)所占的存儲空間隨精度的不同而不同,一般說來對應(yīng)關(guān)系為: p的取值范圍 數(shù)據(jù)所占內(nèi)存字節(jié)數(shù) 1 - 9 5 10-19 9 20-28 13 29-38 17第15頁/共59頁第十六頁,共59頁。6精確小數(shù)(xiosh)型數(shù)據(jù) Decimal(p,s) 或 Dec(p,s) 該類型數(shù)據(jù)與Numeric(p,s)類型用法相同,所不同的是Decimal(p,s)不能用于數(shù)據(jù)表的identity字段。 第16頁/共59頁第十
10、七頁,共59頁。7近似值實(shí)型浮點(diǎn)數(shù)近似值實(shí)型浮點(diǎn)數(shù) real 占占4字節(jié)固定長度內(nèi)存,最多字節(jié)固定長度內(nèi)存,最多7位有效數(shù)字,范圍位有效數(shù)字,范圍從從+-1.1810-38到到+-3.401038 。8可變精度實(shí)型浮點(diǎn)數(shù)可變精度實(shí)型浮點(diǎn)數(shù) float(n) 當(dāng)當(dāng)n的取值為的取值為1-24時(shí),數(shù)據(jù)精度是時(shí),數(shù)據(jù)精度是7位有效數(shù)字,位有效數(shù)字,范圍從范圍從-3.40E+38到到1.79E+38,占,占4字節(jié)內(nèi)存。字節(jié)內(nèi)存。 當(dāng)當(dāng)n的取值為的取值為25-53時(shí),精度是時(shí),精度是15位有效數(shù)字,范位有效數(shù)字,范圍從圍從-1.79E+308到到1.79E+308,占,占8字節(jié)內(nèi)存。字節(jié)內(nèi)存。 實(shí)型浮點(diǎn)數(shù)
11、常量可以實(shí)型浮點(diǎn)數(shù)常量可以(ky)直接使用科學(xué)記數(shù)法直接使用科學(xué)記數(shù)法的指數(shù)形式書寫。的指數(shù)形式書寫。第17頁/共59頁第十八頁,共59頁。貨幣型數(shù)據(jù) SQL Server提供了Smallmoney和Money兩種貨幣型數(shù)據(jù)。1短貨幣型 Smallmoney 該類型(lixng)占4個(gè)字節(jié)固定長度的內(nèi)存,實(shí)際是由2個(gè)2字節(jié)的整數(shù)構(gòu)成,前2個(gè)字節(jié)為貨幣值的整數(shù)部分,后2個(gè)字節(jié)為貨幣值的小數(shù)部分。貨幣值的范圍從-214748.3648到+214748.3647,可以精確到萬分之一貨幣單位。第18頁/共59頁第十九頁,共59頁。2基本貨幣型 Money 該類型占8個(gè)字節(jié)(z ji)固定長度的內(nèi)存,由
12、2個(gè)4字節(jié)(z ji)的整數(shù)構(gòu)成,前4個(gè)字節(jié)(z ji)為貨幣值的整數(shù)部分,后4個(gè)字節(jié)(z ji)表示貨幣值的小數(shù)部分。貨幣值的范圍從-263到263-1,可精確到萬分之一貨幣單位。 Money或Smallmoney類型的數(shù)值常量,應(yīng)加貨幣符號$前綴,負(fù)數(shù)時(shí)加后綴$。 如:$222.222 , -333.333$ 第19頁/共59頁第二十頁,共59頁。日期/時(shí)間型數(shù)據(jù) SQL Server提供的日期/時(shí)間數(shù)據(jù)類型可存儲日期和時(shí)間的組合數(shù)據(jù)。以日期/時(shí)間類型存儲日期或時(shí)間數(shù)據(jù)比字符型更簡單,因?yàn)镾QL Server提供了一系列專門處理日期和時(shí)間的函數(shù)來處理這類數(shù)據(jù)。若使用(shyng)字符型存儲
13、日期和時(shí)間,計(jì)算機(jī)不能識別,也不能自動對這些數(shù)據(jù)按照日期和時(shí)間進(jìn)行處理。 SQL Server提供了Smalldatetime和Datetime兩種日期/時(shí)間的數(shù)據(jù)類型。第20頁/共59頁第二十一頁,共59頁。1短日期/時(shí)間型 Smalldatetime 占4個(gè)字節(jié)固定長度的內(nèi)存,存放(cnfng)1900年1月1日到2079年6月6日的日期時(shí)間,可以精確到分。 2基本日期/時(shí)間型 Datetime 占8個(gè)字節(jié)固定長度的內(nèi)存,存放(cnfng)1753年1月1日到9999年12月31日的日期時(shí)間,可以精確到千分之一秒,即0.001s。第21頁/共59頁第二十二頁,共59頁。注意: 日期時(shí)間型常
14、量與字符串常量相同必須使用單引號括起來。 SQL Server在用戶沒有指定小時(shí)以下精確的時(shí)間數(shù)據(jù)時(shí),自動設(shè)置Datetime或Smalldatetime數(shù)據(jù)的時(shí)間為00:00:00。 數(shù)據(jù)庫中默認(rèn)的日期格式為“年-月-日”,輸入時(shí)可使用年/月/日或年-月-日,也可以使用月/日/年、月-日-年、日/月/年或日-月-年。 如果使用日/月/年或日-月-年,系統(tǒng)不能區(qū)分(qfn)時(shí)默認(rèn)按“月-日-年”處理。第22頁/共59頁第二十三頁,共59頁。字符型數(shù)據(jù) SQL Server提供了Char(n)、Varchar(n)和Text三種ASC碼字符型數(shù)據(jù)。1定長字符型 Char(n) 按n個(gè)字節(jié)的固定長
15、度存放(cnfng)字符串,每個(gè)字符占用一個(gè)字節(jié),長度范圍1n8000; 若實(shí)際字符串長度小于n,則尾部填充空格按n個(gè)字節(jié)的字符串存儲。第23頁/共59頁第二十四頁,共59頁。2變長字符型 Varchar(n) 按不超過n個(gè)字節(jié)的實(shí)際長度存放字符串,可指定最大長度為1n8000;若實(shí)際字符串長度小于n,則按字串實(shí)際長度存儲(cn ch),不填充空格。當(dāng)存儲(cn ch)的字符串長度不固定時(shí),使用Varchar數(shù)據(jù)類型可以有效地節(jié)省空間。 3文本類型 Text Text類型存儲(cn ch)的是可變長度的字符數(shù)據(jù)類型,最大長度為231-1字節(jié)2GB的數(shù)據(jù)。當(dāng)存儲(cn ch)超過8000字節(jié)時(shí),
16、可選擇Text數(shù)據(jù)類型。第24頁/共59頁第二十五頁,共59頁。字符型數(shù)據(jù)采用ASC碼字符集,英文符號占1個(gè)字節(jié),漢字占2個(gè)字節(jié)。字符型字符串常量必須使用單引號括起來。Char、Varchar數(shù)據(jù)類型若不指定長度,默認(rèn)為1字節(jié)。若實(shí)際字符串長度超過指定的n個(gè)字節(jié),用局部變量存儲時(shí)只截取字符串前n個(gè)字節(jié),其余字符舍掉。字符型字符串?dāng)?shù)據(jù)可以在企業(yè)(qy)管理器中直接輸入到數(shù)據(jù)表中,但輸入的字符串長度超過字段指定長度時(shí)系統(tǒng)不接受,也不會自動截取。第25頁/共59頁第二十六頁,共59頁。在用INSERT或UPDATE為數(shù)據(jù)表字符型字段輸入、更新字符串時(shí),如果超過n字節(jié)則系統(tǒng)提示“將截?cái)嘧址蚨M(jìn)制數(shù)
17、據(jù)”并終止命令執(zhí)行,不能保存該數(shù)據(jù)。如果列數(shù)據(jù)項(xiàng)的大小一致,則使用Char。如果列數(shù)據(jù)項(xiàng)的大小差異(chy)相當(dāng)大,則使用 Varcha。第26頁/共59頁第二十七頁,共59頁?!纠?-1】字符型字符串a(chǎn)bcdABCD我們學(xué)習(xí)共12個(gè)字符占16字節(jié)。 若定義數(shù)據(jù)類型為char(20)則存儲為: abcdABCD我們學(xué)習(xí) 若定義數(shù)據(jù)類型為varchar(20)則按實(shí)際長度存儲為: abcdABCD我們學(xué)習(xí) 若定義數(shù)據(jù)類型為char(10)或varchar(10),則在局部變量中存儲為:abcdABCD我 。存儲到數(shù)據(jù)表字段中時(shí),系統(tǒng)提示(tsh)“將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)”不能保存該數(shù)據(jù)。 第2
18、7頁/共59頁第二十八頁,共59頁。統(tǒng)一字符型數(shù)據(jù) 統(tǒng)一字符型也稱為寬字符型,采用Unicode字符集,包括了世界上所有語言符號,一個(gè)英文符號或一個(gè)漢字都占用2個(gè)字節(jié)的內(nèi)存。前127個(gè)字符為ASC碼字符。 SQL Server提供了Nchar(n)、Nvarchar(n)和Ntext三種統(tǒng)一字符型數(shù)據(jù)。1定長統(tǒng)一字符型 Nchar(n) 按n個(gè)字符的固定(gdng)長度存放字符串,每個(gè)字符占用2個(gè)字節(jié),長度范圍1n4000;若實(shí)際字符個(gè)數(shù)小于最大長度n,則尾部填充空格按n個(gè)字符存儲。第28頁/共59頁第二十九頁,共59頁。2變長統(tǒng)一字符型 Nvarchar(n) 按不超過n個(gè)字符的實(shí)際(shj
19、)長度存放字符串,可指定最大字符數(shù)為1n4000;若實(shí)際(shj)字符個(gè)數(shù)小于n,則按字符串實(shí)際(shj)長度占用存儲空間,不填充空格。 3統(tǒng)一字符文本類型 Ntext Ntext存儲的是可變長度的雙字節(jié)字符數(shù)據(jù)類型,最多可以存儲(230-1)/2個(gè)字符。第29頁/共59頁第三十頁,共59頁。說明:統(tǒng)一字符型數(shù)據(jù)長度n為“字符”個(gè)數(shù),所占字節(jié)(z ji)數(shù)為2*n。統(tǒng)一字符型字符串常量必須使用單引號括起來。 Nchar、Nvarchar數(shù)據(jù)類型若不指定長度n,默認(rèn)為1個(gè)字符(2個(gè)字節(jié)(z ji))。若實(shí)際字符串長度超過指定的n個(gè)字符,用局部變量存儲時(shí)只截取字符串前n個(gè)字符,其余字符舍掉。第30
20、頁/共59頁第三十一頁,共59頁。統(tǒng)一字符型數(shù)據(jù)可以在企業(yè)管理器中直接輸入到數(shù)據(jù)表中,但輸入的字符個(gè)數(shù)超過字段長度時(shí)則系統(tǒng)不接受。在用INSERT或UPDATE為數(shù)據(jù)表統(tǒng)一字符型字段輸入、更新字符串時(shí),若超過n個(gè)字符則系統(tǒng)提示“將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)”并終止命令(mng lng)執(zhí)行,不能保存該數(shù)據(jù)。第31頁/共59頁第三十二頁,共59頁?!纠?-2】字符串a(chǎn)bcdABCD我們學(xué)習(xí)作為統(tǒng)一字符型共12個(gè)字符占24字節(jié)。 若定義數(shù)據(jù)類型為Nchar(14)則存儲為: abcdABCD我們學(xué)習(xí) 若定義數(shù)據(jù)類型為Nvarchar(14)則按實(shí)際字符數(shù)存儲為:abcdABCD我們學(xué)習(xí) 若定義數(shù)據(jù)類型
21、為Nchar(10)或Nvarchar(10),則在局部變量中存儲為: abcdABCD我們 存儲到數(shù)據(jù)表字段中時(shí)(zhn sh),系統(tǒng)提示“將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)”不能保存該數(shù)據(jù)。第32頁/共59頁第三十三頁,共59頁。、二進(jìn)制數(shù)據(jù) SQL Server用binary、varbinary 和image三種數(shù)據(jù)類型(lixng)來存儲二進(jìn)制數(shù)據(jù)。二進(jìn)制類型(lixng)可用于存儲聲音圖像等數(shù)字類型(lixng)的數(shù)據(jù)。1、定長二進(jìn)制 binary(n) 按n個(gè)字節(jié)的固定長度存放二進(jìn)制數(shù)據(jù),最大長度為8K字節(jié),即1n8000。 若實(shí)際數(shù)據(jù)不足n個(gè)字節(jié),則在數(shù)據(jù)尾部加0補(bǔ)足n個(gè)字節(jié)。第33頁/共
22、59頁第三十四頁,共59頁。第34頁/共59頁第三十五頁,共59頁。第35頁/共59頁第三十六頁,共59頁。第36頁/共59頁第三十七頁,共59頁?!纠?-3】二進(jìn)制數(shù)據(jù)1aa2bb3cc4共40位5個(gè)字節(jié),可表示為0 x1aa2bb3cc4 若定義數(shù)據(jù)類型為binary(6)則數(shù)據(jù)后加0按6字節(jié)存儲為:0 x1aa2bb3cc400 若定義數(shù)據(jù)類型為varbinary(6)則按實(shí)際數(shù)據(jù)存儲為:0 x1aa2bb3cc4 若定義數(shù)據(jù)類型為binary(4)或varbinary(4),則在局部變量中存儲為:0 x1aa2bb3c。存儲到數(shù)據(jù)表字段中時(shí),系統(tǒng)提示(tsh)“將截?cái)嘧址蚨M(jìn)制數(shù)據(jù)
23、”不能保存該數(shù)據(jù)。第37頁/共59頁第三十八頁,共59頁。圖像、文本型數(shù)據(jù)的存儲方式 存儲文本、圖像等大型數(shù)據(jù)時(shí),可使用Text、Ntext和Image三種數(shù)據(jù)類型,這三種數(shù)據(jù)類型的數(shù)據(jù)量往往比較大,在SQL Server 7.0以前的版本中,文本和圖像數(shù)據(jù)被存儲在專門的頁中,在數(shù)據(jù)行的相應(yīng)位置只保存指向這些數(shù)據(jù)的指針(zhzhn)。 SQL Server 2000提供了將小型文本或圖像數(shù)據(jù)直接在行中存儲的功能,不需要到另外的頁中訪問這些數(shù)據(jù),使得讀寫文本和圖像數(shù)據(jù)可以與讀寫普通字符串一樣快。第38頁/共59頁第三十九頁,共59頁。 使用系統(tǒng)存儲過程sp_tableoption可以指定文本或圖
24、像數(shù)據(jù)(shj)是否在表的行中存儲。 語法格式: sp_tableoption 表名,text in row,TRUE|FALSE第39頁/共59頁第四十頁,共59頁。說明: 當(dāng)指定“TRUE”選項(xiàng)時(shí),允許小型文本或圖像數(shù)據(jù)直接在該表的行中存儲,而且還可以指定文本或圖像數(shù)據(jù)大小的上限值(24-7000字節(jié)),默認(rèn)上限256字節(jié)。 當(dāng)數(shù)據(jù)的大小不超過上限值而且同時(shí)數(shù)據(jù)行有足夠空間時(shí),文本和圖像數(shù)據(jù)就會直接存儲在行中。 若以上兩個(gè)條件有一個(gè)不滿足時(shí),行中仍只存放指向數(shù)據(jù)存儲位置(wi zhi)的指針。第40頁/共59頁第四十一頁,共59頁。【例4-4】在當(dāng)前數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)表example,字段b
25、in_1存放TEXT類型(lixng)數(shù)據(jù),bin_2存放NTEXT類型(lixng)數(shù)據(jù),bin_3存放Image類型(lixng)數(shù)據(jù)。CREATE TABLE example(bin_1 text,bin_2 ntext,bin_3 ntext Image)Go /* 以下語句指定不大于1000字節(jié)的文本或圖像數(shù)據(jù)在行中存儲 */sp_tableoption example, text in row, TRUEsp_tableoption example ,text in row, 1000 /* 以下語句指定Mytable表不在行中存儲文本和圖像數(shù)據(jù) */sp_tableoption
26、Mytable , text in row, FALSE第41頁/共59頁第四十二頁,共59頁。4.4 T-SQL的運(yùn)算符與表達(dá)式 運(yùn)算符是一些符號,它們能夠用來執(zhí)行算術(shù)(sunsh)運(yùn)算、賦值運(yùn)算、字符串連接以及在字段、常量和變量之間進(jìn)行比較。 在T-SQL中,運(yùn)算符主要有以下6大類:算術(shù)(sunsh)運(yùn)算符、賦值運(yùn)算符、字符串串聯(lián)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符以及位運(yùn)算符。第42頁/共59頁第四十三頁,共59頁。、算術(shù)運(yùn)算符及表達(dá)式1、算術(shù)運(yùn)算符: 算術(shù)運(yùn)算符可以在兩個(gè)表達(dá)式上執(zhí)行數(shù)學(xué)運(yùn)算,這兩個(gè)表達(dá)式可以是數(shù)字?jǐn)?shù)據(jù)類型分類的任何數(shù)據(jù)類型。 SQL標(biāo)準(zhǔn)中規(guī)定了5種用于表達(dá)式的符號:加號(+
27、)、減號(jin ho)(-)、乘號(*) 、 除號(/)和取模(%) 。在SQL中,這5種符號的優(yōu)先權(quán)與數(shù)學(xué)中的優(yōu)先權(quán)相同,乘除的優(yōu)先權(quán)高于加減的優(yōu)先權(quán),乘除具有相同的優(yōu)先權(quán),加減之間也具有相同的優(yōu)先權(quán)。它們都可以在同一表達(dá)式中使用,具有相同優(yōu)先權(quán)的符號按照從左到右的順序來計(jì)算。第43頁/共59頁第四十四頁,共59頁。2、算術(shù)表達(dá)式 表達(dá)式是符號與運(yùn)算符的組合,簡單的表達(dá)式可以是一個(gè)常量、變量、列或標(biāo)量函數(shù),也可以用運(yùn)算符將兩個(gè)或更多的簡單表達(dá)式連接起來組成復(fù)雜的表達(dá)式。 表達(dá)式在SQL查詢中的應(yīng)用,使SQL的查詢操作有了更大的靈活性。表達(dá)式中可以包含的數(shù)據(jù)類型非常廣泛,數(shù)據(jù)庫中基本的數(shù)據(jù)類
28、型,如數(shù)字?jǐn)?shù)據(jù)類型、字符串?dāng)?shù)據(jù)類型、時(shí)間(shjin)和日期數(shù)據(jù)類型等,都可以在表達(dá)式中使用。第44頁/共59頁第四十五頁,共59頁。運(yùn)算符數(shù)據(jù)類型+整型浮點(diǎn)數(shù)精確數(shù)貨幣型-*/%整型第45頁/共59頁第四十六頁,共59頁。、賦值運(yùn)算符及表達(dá)式 賦值運(yùn)算符的作用是能夠?qū)?shù)據(jù)值指派給特定的對象(duxing)。 T-SQL 中只有一個(gè)賦值運(yùn)算符,即等號(=)。第46頁/共59頁第四十七頁,共59頁。、字符串連接(linji)運(yùn)算符及表達(dá)式 在T-SQL中,字符串連接(linji)運(yùn)算符只用“+”,而不能用“|”或“&”。 字符串表達(dá)式:字符串表達(dá)式1 + 字符串表達(dá)式2 字符串表達(dá)式的值
29、仍是字符串。 如:ABC+EFG 則字符串表達(dá)式連接(linji)后的新字符串是:ABCEFG。 如:ABC+,+EFG 則連接(linji)后的新字符串是ABC,EFG。第47頁/共59頁第四十八頁,共59頁。、比較運(yùn)算符及表達(dá)式 比較運(yùn)算符用于比較兩個(gè)表達(dá)式的大小(dxio)或是否相同,其比較的結(jié)果是邏輯值,即TRUE(表示表達(dá)式的結(jié)果為真)、FALSE(表示表達(dá)式的結(jié)果為假) 。除了 text、ntext 或 image 數(shù)據(jù)類型的表達(dá)式外,比較運(yùn)算符可以用于所有的表達(dá)式。第48頁/共59頁第四十九頁,共59頁。運(yùn)算符含義大于=大于等于=小于等于不等于!=不等于!不大于! 500 則單價(jià)大于500條件為TRUE,單價(jià)不大于500條件為FALSE如:23的結(jié)果(ji gu)為FALS
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 認(rèn)識三角形第4課時(shí)三角形的高 教學(xué)設(shè)計(jì)-2024-2025學(xué)年北師大版數(shù)學(xué)七年級下冊
- 600元美容館合同范本
- 受聘合同范本
- 勞務(wù)雇傭責(zé)任合同范本
- 雙方交付款合同范本
- 保證質(zhì)押合同范本
- 發(fā)廊股東入股合同范本
- 《送元二使安西》教案設(shè)計(jì)
- 勞務(wù)合同范本兼職
- 保定市電梯維保合同范本
- 《淞滬會戰(zhàn)》課件
- 《智能制造技術(shù)基礎(chǔ)》課件-第4章 加工過程的智能監(jiān)測與控制
- 初一家長會課件96108
- 罪犯正常死亡報(bào)告范文
- 《企業(yè)文化概述》課件
- 某地源熱泵畢業(yè)設(shè)計(jì)
- (三級)工業(yè)機(jī)器人運(yùn)用與維護(hù)理論考試復(fù)習(xí)題庫(含答案)
- 2024年廣東省公務(wù)員錄用考試《行測》真題及解析
- 高中英語必背3500單詞表(完整版)
- 房產(chǎn)中介居間服務(wù)合同模板樣本
- 海洋工程裝備保險(xiǎn)研究
評論
0/150
提交評論