SQLSERVER 中GO的作用详解

具体不废话了,请看下文详解。

=90 then '成绩优秀' when Grade<90 and Grade>=80 then '成绩良好' when Grade<80 and Grade>=70 then '成绩及格' else '不及格' end from tb_Grade

如果只是执行一条语句,有没有GO都一样

如果多条语句之间用GO分隔开就不一样了

每个被GO分隔的语句都是一个单独的事务,一个语句执行失败不会影响其它语句执行。

例如:

首先同时执行下边的语句

rush:sql;"> select * from sysobjects where id=a select getdate()

你会发现会报错,并且不会显示任何结果集

而你再执行

rush:sql;"> select * from sysobjects where id=a go select getdate() go

你会发现尽管同样会报错,但结果集中包含select getdate()的结果。

ps:sql SERVER 中 GO 的用法

用信号通知 Microsoft® sql Server™ 实用工具一批 Transact-sql 语句的结束。
GO 不是 Transact-sql 语句;而是可为 osql 和 isql 实用工具及 sql Server 查询分析器识别的命令。

如果你的sql过长的时候,就要写GO,或者有一些语句,它只能是第一句操作的,在之前你也得写 GO ,GO的意思 是 分批处理语句 有加这个 GO ,就执行GO 行的代码,执行后再执行接下来的代码……

像这样的情况下就要用到GO ,分批处理数据……

rush:sql;"> use master go

if exists (select * from sysdatabases where name = 'kejianDB')
drop database kejianDB
go

create database kejianDB
go

use kejianDB
go

--(行业表)
create table Trade
(
tra_Id int primary key identity(1,1) not null,--行业ID (主键、自增长)
tra_Name varchar(50) not null --行业名称
)
go

以上就是本文的全部叙述,希望大家喜欢。

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 &#39;EastRiver&#39; 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...