應(yīng)用SQL Server 2000解決實際問題時,標準的T-SQL語句不能滿足需要,需要加一些非標準的語言要素。作為高職院校的教師,要培養(yǎng)高技能的人才,教師必須對理論教學內(nèi)容和實踐教學內(nèi)容都要做到精、透,這就需要不斷地學習和積累經(jīng)驗。
眾所周知,結(jié)構(gòu)化查詢語言SQL(Structured Query Language)是IBM公司在20世紀70年代開發(fā)的查詢語言,SQL標準經(jīng)過多次修改,現(xiàn)在已成為關(guān)系型數(shù)據(jù)庫環(huán)境下的標準查詢語言。作為SQL Server使用的Transact-SQL語言,它不但包含了標準的SQL語言部分,而且為了增強可編程性和靈活性,另外增加了如注釋、變量、函數(shù)等非標準的語言要素。在對SQL Server 2000的三年教學中,對SQL Server語句的應(yīng)用進行了歸納總結(jié),積累了一些經(jīng)驗。
一、go語句的應(yīng)用
為了提高程序的執(zhí)行效率,在Transact-SQL語言編寫的程序中,把多個語句放在一起形成語句組,在執(zhí)行程序時把語句組作為一個批處理一次性地發(fā)送到SQL Server服務(wù)器。同時,為了使程序的各組成部分及功能劃分比較清楚,在每一個批處理后用Go語句作為結(jié)束標志,雖然Go語句有時不是必須用的。但在下列情況下,必須使用GO語句。
1、在使用命令創(chuàng)建數(shù)據(jù)庫并打開數(shù)據(jù)庫時,若這兩個操作一起執(zhí)行則必須使用GO語句進行分隔。
2、在數(shù)據(jù)庫中創(chuàng)建視圖時,在打開數(shù)據(jù)庫語句和創(chuàng)建視圖語句一起執(zhí)行時必須使用GO語句進行分隔。
3、在執(zhí)行存儲過程時,若沒有使用EXEC命令,則此存儲過程與其他語句一起執(zhí)行時必須使用GO語句進行分隔。
4、在數(shù)據(jù)庫中創(chuàng)建函數(shù)、存儲過程或觸發(fā)器時,在打開數(shù)據(jù)庫語句和創(chuàng)建函數(shù)、存儲過程或觸發(fā)器語句一起執(zhí)行時必須使用GO語句進行分隔。
另外,嚴格來講,Go語句本身不是Transact-SQL語句的組成部分,所以在給程序添加注釋時注釋內(nèi)容不能直接放在GO語句的后面。
二、select語句的應(yīng)用
Select語句能夠完成對表中數(shù)據(jù)的查詢,而且查詢是對表中數(shù)據(jù)處理的最常用的操作,但select語句的功能及應(yīng)用還有很多。
1、顯示函數(shù)或變量的值
例如:
程序如下:
use student
go
select*from course
go
insert into course values('031