应该和2005是一样的呀
就是数据的分批处理
就比如你上面的
exec sp_addlogin '李勇','123456','school','English'
go
use school
go
exec sp_grantdbaccess '李勇'
这是先创建登陆sql server 的用户
然后再让这个用户登陆到指定的数据库(school)
---------------
如果没有go 就相当于创建登陆sql server 的用户和登陆到指定用户的执行过程是同时进行,那么肯定会报错,类似于你必须先创建数据库才能在该数据库上建表,有先后顺序
GO 表示一批 T-SQL 语句结束,GO 之后的 T-SQL 语句属于另一个批处理的范围,在 T-SQL 所有语句的最后都默认有一个 GO。但是,请注意 GO 不是 T-SQL 语句,而只是一个能被 SQL Server 实用工具识别的命令。@是标识变量的符号。所谓变量是指可以随用户输入数据不同而改变的替代符号。
如果只是执行一条语句,有没有GO都一样
如果多条语句之间用GO分隔开就不一样了
每个被GO分隔的语句都是一个单独的事务,一个语句执行失败不会影响其它语句执行。
做个试验
首先同时执行下边的语句
select from sysobjects where id=a
select getdate()
你会发现会报错,并且不会显示任何结果集
而你再执行
select from sysobjects where id=a
go
select getdate()
go
你会发现尽管同样会报错,但结果集中包含select getdate()的结果。
以上就是关于sql server 2000 中的go命令有什么用全部的内容,包括:sql server 2000 中的go命令有什么用、关于sql中的@和go、sql2000中sql语句很多都有个"GO",这是什么意思啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)