批处理

批处理是指从应用程序一次性地发送一组完整SQL语句到SQL Server上执行

批处理的所有语句被当作一个整体,被成批地分析,编译和执行

所有的批处理指令以go作为结束标志

go的特点

go语句必须自成一行,只有注释可以在同一行上

每个批处理单独发送到服务器

go语句不是T-SQL命令

--批处理的特点
--1)自成一行
use E_Market
go --go同一行前面能有T—SQL语句,go同一行后面可以直接重新开始一个批处理,但是这样的话会影响可读性
--总结:之前不能有T—SQL语句,之后有T—SQL语句严重影响可读性,所以GO要独占一行的
--2)每个批处理单独发送到服务器去执行,一个批处理出错不会影响另外的一个批处理
select 1/0
go
--第一个批处理的结束
select 0/1
go

--两个批处理同时执行一个批处理出错不会影响第二个批处理的执行,因为每个批处理都是单独发送到服务器去执行的

--3)go是批处理结束的标志,但不是T-SQL命令,是被Management Studio所识别的命令

--批处理的应用
--在什么情况下会用到批处理
--在sql脚本中的一些事情必须发生在另外一件事情之前,或者是分开发生的时候,这个时候就需要批处理
use master

if exists(select * from sysdatabases where name='TestTable')
create database TestDB
on primary
(
name='TestDB_data',
filename='D:\project\TestDB_data.mdf',
size=5mb
)
log on
(
name='TestDB_log',
filename='D:\project\TestDB_log.ldf',
size=5mb
)
--创建一张表TestTable
go --加批处理go
use TestDB
go
create table TestTable
(
UId int,
UName varchar(20)
)
--执行上面的创建数据库及数据表发现数据表不在新创建的数据库中
--原因是创建表的时候看一下当前所操作的数据库是谁
--当前的操作数据库是E_Market,所以就创建到了E_Market中

posted @ 2019-05-11 11:00  我是神奇的小白  阅读(712)  评论(0)    收藏  举报
点击右上角即可分享
微信分享提示