浅析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


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值