SQL SERVER 中 GO 的用法2
具體不廢話了,請(qǐng)看下文詳解。
| 1 2 3 4 5 6 7 8 9 10 | use db_CSharp go ?select *, ?備注=case ?when Grade>=90 then '成績(jī)優(yōu)秀' ?when Grade<90 and Grade>=80 then '成績(jī)良好' ?when Grade<80 and Grade>=70 then '成績(jī)及格' ?else '不及格' ?end ?from tb_Grade |
如果只是執(zhí)行一條語(yǔ)句,有沒(méi)有GO都一樣
如果多條語(yǔ)句之間用GO分隔開(kāi)就不一樣了
每個(gè)被GO分隔的語(yǔ)句都是一個(gè)單獨(dú)的事務(wù),一個(gè)語(yǔ)句執(zhí)行失敗不會(huì)影響其它語(yǔ)句執(zhí)行。
例如:
首先同時(shí)執(zhí)行下邊的語(yǔ)句
?| 1 2 | select * from sysobjects where id=a select getdate() |
你會(huì)發(fā)現(xiàn)會(huì)報(bào)錯(cuò),并且不會(huì)顯示任何結(jié)果集
而你再執(zhí)行
?| 1 2 3 4 | select * from sysobjects where id=a go select getdate() go |
你會(huì)發(fā)現(xiàn)盡管同樣會(huì)報(bào)錯(cuò),但結(jié)果集中包含select getdate()的結(jié)果。
ps:SQL SERVER 中 GO 的用法
用信號(hào)通知 Microsoft? SQL Server? 實(shí)用工具一批 Transact-SQL 語(yǔ)句的結(jié)束。
GO 不是 Transact-SQL 語(yǔ)句;而是可為 osql 和 isql 實(shí)用工具及 SQL Server 查詢分析器識(shí)別的命令。
如果你的SQL過(guò)長(zhǎng)的時(shí)候,就要寫(xiě)GO,或者有一些語(yǔ)句,它只能是第一句操作的,在之前你也得寫(xiě) GO ,GO的意思 是 分批處理語(yǔ)句 有加這個(gè) GO ,就執(zhí)行GO 行的代碼,執(zhí)行后再執(zhí)行接下來(lái)的代碼……
像這樣的情況下就要用到GO ,分批處理數(shù)據(jù)……
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | use master go if exists (select * from sysdatabases where name = 'kejianDB') drop database kejianDB go create database kejianDB go use kejianDB go --(行業(yè)表) create table Trade ( tra_Id int primary key identity(1,1) not null, --行業(yè)ID (主鍵、自增長(zhǎng)) tra_Name varchar(50) not null --行業(yè)名稱 ) go |
轉(zhuǎn)載于:https://www.cnblogs.com/lvdongjie/p/5326798.html
總結(jié)
以上是生活随笔為你收集整理的SQL SERVER 中 GO 的用法2的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Node.js之HTPP URL
- 下一篇: 使用uicollectionView时需