在transact-sql 中的go有什么用?

书上写另起一行要输入go语句,否则不执行,但我试过了不输入go也试可以执行的,go有什么用?

第1个回答  2006-04-07
我擦擦汗,你应该到编程问,而不是外语。
另起一行不一定要输入go,但是要写go一定要另起一行哈
msdn里是这么说的

GO (Transact-SQL)

向 SQL Server 实用工具发出一批 Transact-SQL 语句结束的信号。
GO 不是 Transact-SQL 语句;它是 sqlcmd 和 osql 实用工具以及 SQL Server Management Studio 代码编辑器识别的命令。

SQL Server 实用工具将 GO 解释为应该向 SQL Server 实例发送当前批 Transact-SQL 语句的信号。当前批语句由上一 GO 命令后输入的所有语句组成,如果是第一条 GO 命令,则由即席会话或脚本开始后输入的所有语句组成。

GO 命令和 Transact-SQL 语句不能在同一行中。但在 GO 命令行中可包含注释。

用户必须遵照使用批处理的规则。例如,在批处理中的第一条语句后执行任何存储过程必须包含 EXECUTE 关键字。局部(用户定义)变量的作用域限制在一个批处理中,不可在 GO 命令后引用。

SQL Server 应用程序可以将多个 Transact-SQL 语句作为一个批发送到 SQL Server 的实例来执行。然后,该批中的语句被编译成一个执行计划。程序员在 SQL Server 实用工具中执行特殊语句,或生成 Transact-SQL 语句的脚本在 SQL Server 实用工具中运行时,使用 GO 作为批结束的信号。

如果基于 ODBC 或 OLE DB API 的应用程序试图执行 GO 命令,会收到语法错误。SQL Server 实用工具从不向服务器发送 GO 命令。

http://msdn2.microsoft.com/zh-cn/library/ms188037.aspx

在transact-sql 中的go有什么用?
GO 不是 Transact-SQL 语句;它是 sqlcmd 和 osql 实用工具以及 SQL Server Management Studio 代码编辑器识别的命令。SQL Server 实用工具将 GO 解释为应该向 SQL Server 实例发送当前批 Transact-SQL 语句的信号。当前批语句由上一 GO 命令后输入的所有语句组成,如果是第一条 GO 命令,则由即席会...

SQL中的go、begin、end是什么意思啊?
SQL中的go、begin、end的用法说明如下:go向SQL Server实用程序发出一批Transact-SQL语句结束的信号。 Go分批执行t-sql语句 (如果该步骤成功,则执行下一步,即一次执行一个步骤)。BEGIN和END语句用于将多个Transact-SQL语句组合为一个逻辑块。 BEGIN和END语句可用于控制流语句必须执行两个或多个Transact...

存储过程的”GO“子句是什么用?
GO 不是 Transact-SQL 语句;而是可为 osql 和 isql 实用工具及 SQL Server 查询分析器识别的命令。SQL Server 实用工具将 GO 解释为应将当前的 Transact-SQL 批处理语句发送给 SQL Server 的信号。当前批处理语句是自上一 GO 命令后输入的所有语句,若是第一条 GO 命令,则是从特殊会话或脚本的...

关于sql 中 use go 的具体用法
transact-sql 语句结束的信号。go是把t-sql语句分批次执行。(一步成功了才会执行下一步,即一步一个go)use 是改变 对哪个数据库的操作 http:\/\/blog.sina.com.cn\/s\/blog_475689f301000bol.html

sql语句中go的用法
go之前的语句作为一个批处理执行,为了区分多个批处理而设的分隔符.,代表一个批处理的结束.批处理是包含一个或多个 Transact-SQL 语句的组 Create,Alter这些语句可能不能其他语句在同一个批处理中执行。

SQL 中go的意义
go不是 Transact-SQL 语句,而是 osql 和 isql 实用工具及 SQL Server 查询分析器才能识别的命令。go其实就是个分隔符,将语句分隔开,但go又不仅仅是个分隔符,比如你给的代码,如果没有go有可能会执行出错,究其原因,主要是因为其前后的语句是两个独立的事务。go语句分隔的部分会被分别编译为两...

SQL Server编程语言
批处理在T-SQL中重要,它是一组语句的集合,通过GO标识。例如,创建临时表并分批插入数据,如果一个批次出错,其他批次不受影响,只在当前批次内执行。流程控制方面,IF…ELSE用于基于条件执行不同代码,WHILE用于循环操作,而RETURN和WAITFOR等关键字则用于控制程序执行流程。在处理重复数据或执行迭代任务时...

sql中如何取count(*)的值(sql中的count(*)和count(1))
Transact-SQL语法约定 语法 COUNT({[[ALL|DISTINCT]expression]|*})备注 COUNT(*)返回组中的项数。包括NULL值和重复项。COUNT(ALLexpression)对组中的每一行都计算expression并返回非空值的数量。COUNT(DISTINCTexpression)对组中的每一行都计算expression并返回唯一非空值的数量。对于大于2^31-1的返回值...

执行Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer...
USE [Test]GO CREATE USER [12] FOR LOGIN [12]GO USE [Test]GO EXEC sp_addrolemember N'db_owner', N'12'GO 以SQL2000为例 --切换到你新增的用户要控制的数据库 use 你的库名 go --新增用户 exec sp_addlogin 'test' --添加登录 exec sp_grantdbaccess N'test' --使...

在SQL_2005中批处理是在什么情况下使用的?也就是GO,在那种情况下...
作为 SQL Server 公用程式中 Transact-SQL 陈述式批次结束的信号。查看联机说明和例子

相似回答