1. 程式人生 > >淺析SQL 中GO關鍵字的作用

淺析SQL 中GO關鍵字的作用

如果只是執行一條語句,有沒有GO都一樣

如果多條語句之間用GO分隔開就不一樣了

每個被GO分隔的語句都是一個單獨的事務,一個語句執行失敗不會影響其它語句執行。

例如:

首先同時執行下邊的語句

select * from sysobjects where id=a
select getdate()

你會發現會報錯,並且不會顯示任何結果集

而你再執行

select * from sysobjects where id=a
go
select getdate()
go
你會發現儘管同樣會報錯,但結果集中包含select getdate()的結果。
也就是說,GO是分批處理的意思,語句太長的時候使用它分批處理:
use master
go
 
if exists (select * from sysdatabases where name = 'kejianDB')
drop database kejianDB
go
 
create database kejianDB
go
 
use kejianDB
go
 
 
--(行業表)
create table Trade
(
tra_Id int primary key identity(1,1) not null, --行業ID (主鍵、自增長)
tra_Name varchar(50) not null --行業名稱
)
go