看看msdn,有一个关于“GO”命令的例子。为什么会有:
USE somedb
GO
...
...
在不同的批次中选择db是必要的吗?谢谢你的解释!
答案 0 :(得分:14)
是否有必要选择db in 不同批次?
但是,某些命令必须是批处理中的第一个语句。
示例包括CREATE VIEW
,CREATE PROCEDURE
和CREATE TRIGGER
。
因此,如果你想这样做:
USE DB
CREATE VIEW X AS SELECT * FROM Y
然后你需要这样做:
USE DB
GO
CREATE VIEW X AS SELECT * FROM Y
如果您只运行一个USE DB
语句,则GO
没有用处。
某些命令不要求它们是批处理中的第一个语句:
USE DB
SELECT * FROM X
有时在代码生成中,可能不需要所有GO命令,但生成它们更容易。
答案 1 :(得分:0)
它向SQL Server实用程序发出一批Transact-SQL语句的结束信号。 您可以在此处查看更多详情:GO (Transact-SQL)