如果只是执行一条语句,有没有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

文章来源于互联网,如有雷同请联系站长删除:mysql中go关键字的作用

发表评论