我看到的一个常见模式是:
USE Name_Of_My_Database
GO据我所知,这是没有意义的,是吗?我试着在下面列出的地方寻找答案,但没有找到答案:
What is the use of GO in SQL Server Management Studio & Transact SQL?
In SQL Server, when should you use GO and when should you use semi-colon ;?
https://learn.microsoft.com/en-us/sql/t-sql/language-elements/sql-server-utilities-statements-go
编辑:不,这不是一个复制,这个问题更具体-我没有找到我需要的信息在链接的问题,虽然我看了它之前,张贴这个。
发布于 2017-10-24 18:22:37
GO和;有两个很大的区别
GO将脚本分成不同的批。;是语句终止符。当下面的语句要求GO是批处理中的第一个语句时,在USE DatabaseName之后使用它是必要的。例如,以下代码将失败:
Use SomeDatabase
Create Procedure spSomeProcedure
As Begin
Select 1
EndMsg 111,15级,状态1,过程spSomeProcedure,第4行 “'CREATE/ALTER过程”必须是查询批处理中的第一个语句。
但是在它们之间添加一个GO将允许运行该语句:
Use SomeDatabase
Go
Create Procedure spSomeProcedure
As Begin
Select 1
End命令已成功完成。
发布于 2017-10-24 18:23:25
我将我的SSMS脚本选项设置为非脚本USE语句。总的来说,我觉得它们也是毫无意义的。
"GO“不是SQL命令,它只是一个批处理分隔符.它是SSMS特性(或ISQL/OSQL特性),而不是Server特性。这是一种让一个文本文件包含要发送到Server的多批SQL的方法。
https://stackoverflow.com/questions/46917381
复制相似问题