sql中go 的作用

在批处理sql语句时,常在语句的结尾加入Go,Go在语句中可以界定一段语句的结尾,如变量的作用范围等。在Go 语句之前加入Return 可以跳出Go 语句段。break可以跳出While 循环。

GO   执行
  用信号通知   Microsoft®   SQL   Server™   实用工具一批   Transact-SQL   语句的结束。   
    
  语法   
  GO   
    
  注释   
  GO   不是   Transact-SQL   语句;而是可为   osql   和   isql   实用工具及   SQL   Server   查询分析器识别的命令。   
    
  SQL   Server   实用工具将   GO   解释为应将当前的   Transact-SQL   批处理语句发送给    SQL   Server   的信号。当前批处理语句是自上一   GO   命令后输入的所有语句,若是第一条   GO   命令,则是从特 殊会话或脚本的开始处到这条   GO   命令之间的所有语句。SQL   查询分析器和   osql   及   isql   命令提示实用工具 执行   GO   命令的方式不同。有关更多信息,请参见   osql   实用工具、isql   实用工具和   SQL   查询分析器。      
    
  GO   命令和Transact-SQL   语句不可在同一行上。但在   GO   命令行中可包含注释。   
    
  用户必须遵照使用批处理的规则。例如,在批处理中的第一条语句后执行任何存储过程必须包含   EXECUTE   关键字。局部(用户定义)变量的作用域限制在一个批处理中,不可在   GO   命令后引用。   
    
  USE   pubs   
  GO   
  DECLARE   @MyMsg   VARCHAR(50)   
  SELECT   @MyMsg   =   'Hello,   World.'   
  GO   --   @MyMsg   is   not   valid   after   this   GO   ends   the   batch.   
    
  --   Yields   an   error   because   @MyMsg   not   declared   in   this   batch.   
  PRINT   @MyMsg   
  GO   
    
  SELECT   @@VERSION;   
  --   Yields   an   error:   Must   be   EXEC   sp_who   if   not   first   statement   in     
  --   batch.   
  sp_who   
  GO   
    
  SQL   Server   应用程序可将多条   Transact-SQL   语句作为一个批处理发给   SQL   Server    去执行。在此批处理中的语句编译成一个执行计划。程序员在   SQL   Server   实用工具中执行特定语句,或生成   Transact- SQL   语句脚本在   SQL   Server   实用工具中运行,用   GO   来标识批处理的结束。   
    
  如果基于   DB-Library、ODBC   或   OLE   DB   APIs   的应用程序试图执行   GO   命令时会收到语法错误。SQL   Server   实用工具永远不会向服务器发送   GO   命令。   
    
  权限   
  GO   是一个不需权限的实用工具命令。可以由任何用户执行。   
    
  示例   
  下面的示例创建两个批处理。第一个批处理只包含一条   USE   pubs   语句,用于设置数据库上下文。剩下的语句使用了一个局部变量,因 此所有的局部变量声明必须在一个批处理中。这一点可通过在最后一条引用此变量的语句之后才使用   GO   命令来做到。   
    
  USE   pubs   
  GO   
  DECLARE   @NmbrAuthors   int   
  SELECT   @NmbrAuthors   =   COUNT(*)   
  FROM   authors   
  PRINT   'The   number   of   authors   as   of   '   +   
              CAST(GETDATE()   AS   char(20))   +   '   is   '   +   
              CAST(@NmbrAuthors   AS   char   (10))   
  GO    
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值