SQLSERVER 中GO的作用详解

这篇文章主要介绍了SQLSERVER 中GO的作用详解的相关资料,需要的朋友可以参考下

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

?

1

2

3

4

5

6

7

8

9

10

use db_CSharp

go

select *,

备注=case

when Grade>=90 then '成绩优秀'

when Grade<90 and Grade>=80 then '成绩良好'

when Grade<80 and Grade>=70 then '成绩及格'

else '不及格'

end

from tb_Grade

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

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

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

例如:

首先同时执行下边的语句

?

1

2

select * from sysobjects where id=a

select getdate()

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

而你再执行

?

1

2

3

4

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 ,分批处理数据……

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

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

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

版权声明:本文(即:原文链接:https://www.qin1qin.com/catagory/27095/)内容由互联网用户自发投稿贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 630367839@qq.com 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022-09-29 4:28:04
下一篇 2022-09-29 4:28:10

软件定制开发公司

相关阅读

发表回复

登录后才能评论
通知:禁止投稿所有关于虚拟货币,币圈类相关文章,发现立即永久封锁账户ID!