什么是脚本。我们前面学的CREATE TABLE <table name> ,USE <database name>这些都是脚本,为什么用脚本。脚本存储到文件中并且可以重复利用和提取的文件。

创建变量: DECLARE语句最常用的语法: DECLARE @<variable name> <variable type>[=value][[,@<variable name> <variable type>[=value]@<variable name> <variable type>[=value],[.....n]];

DECLARE @TotalCount int=0 --创建变量,并初始化值(sql server2008以下数据库报错)
select @TotalCount --输出0
SET @TotalCount=10--设置变量值为10
select @TotalCount --输出10
select @TotalCount=count(*) from dbo.test003
select @TotalCount --输出5 也可以创建TABLE。
DECLARE @temp Table
(
ID int identity(1,1) primary key,
name nvarchar(20) not null
)
insert into @temp values('test_1');
insert into @temp values('test_2');
select * from @temp
结果:下面截图

使用流程控制语句:

先创建数据表

USE panda
GO CREATE TABLE test004
(
ID INT identity(1,1) primary key,
name nvarchar(20) not null,
typeint int
)

if....else:基本语法IF<boolean Expression><SQL statement>|BEGIN <code series> END [ELSE <SQL statement>|BEGIN <code series> END]其中的表达式几乎可以是任何布尔表达式.

declare @count int
set @count=0;
while(@count<100)
begin
set @count=@count+1;
if(@count%4=0)
insert into dbo.test004 values('test_'+convert(nvarchar(20),@count),0);
else
insert into dbo.test004 values('test_'+convert(nvarchar(20),@count),@count%4);
end

多条语句 :

if(boolen expression)
begin
--语句1
--语句2
--语句3
end --多条语句绑在一起成一条语句

case:基本语法: CASE<input expresstion> WHEN <when expression> THEN <result expression>[.....][ELSE <result expression>] END

SELECT  ID,name, [state]= CASE typeint%4
when 1 then '发货'
when 2 then '签收'
when 3 then '退货'
ELSE
'未知' END
FROM dbo.test004

while 基本语法:WHILE <Boolen expression>|<sql statement> [begin <statement block>[break]<sql statement>|<statement block>[CONTINUE] end];

BREAK 是强制结束循环。CONTINUE 重新回到起点,停止当前循环。

declare @count int
set @count=0;
while(@count<100)
begin
set @count=@count+1;
insert into dbo.test004 values('test_'+convert(nvarchar(20),@count),@count/4)
end

waitfor : 基本语法:WAITFOR DELAY< 'time'> |TIME <'time'>

DELAY 参数指定等待的时间段,不能指定天数-只能指定小时数、秒数、允许延迟最长时间为24小时。因此,如下语句。WAITFOR DELAY '24:00'将运行WAITFOR 语句前的任何代码。然后达到waitfor语句停止24小时,之后继续执行下一条语句。

TIME 参数参数指定等待的时间段,不能指定日期,只能是24小时制某个时间,同样最长延迟时间也是一天。因此,如下语句。WAITFOR TIME '00:00'将运行WAITFOR 语句前的的任何代码,直到凌晨0点停止执行。之后执行waitfor语句后下一条代码。

结束语:因为知识有限,还加上初学者,这章博客写的不怎么好,以后有时间在修改。和重新写,有写地方描述着不怎么清晰。。。以后会更新。。。下一章博客是存储过程。

SQL入门经典(七) 之脚本和批处理的更多相关文章

  1. SQL入门经典(十) 之事务

    事务是什么?事务关键在与其原子性.原子性概念是指可以把一些事情当作一个执行单元来看待.从数据库角度看待.他是指应该全部执行或者全部不执行一条或多条语句的最小组合.当处理数据时候经常确保一件事发生另一件 ...

  2. 《SQL入门经典》总结

    <SQL入门经典>这本书从考试前就开了个头,一直到前两天才看完,拉的战线也够长的.放假来了,基本上什么内容都不记得了.好不容易看完了,就赶紧总结一下吧! 该书分为两大部分,第一部分是第1~ ...

  3. SQL入门经典(一)之简介

    今天是我第一天开通博客,也是我的第一篇博客.以后为大家带来第一篇关于学习技术性文章,这段时间会为大家带来是SQL入门学习.希望大家坚持读下去,因为学历有限.我也是初学者.语言表达能力不好和知识点不足, ...

  4. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第六,七,八,九,十章,十一章,十二章)

    第六章: 管理数据库事务 事务 是 由第五章 数据操作语言完成的  DML ,是对数据库锁做的一个操作或者修改. 所有事务都有开始和结束 事务可以被保存和撤销 如果事务在中途失败,事务中的任何部分都不 ...

  5. SQL入门经典(八) 之存储过程

    存储过程(stored procedure)有时候称为sproc,它是真正的脚本-或者更准确的说,他是批处理(batch)-它存储于数据库中,而不是淡出的文件中.无论如何,这个比较并不是很确定.存储过 ...

  6. SQL入门经典(五) 之键和约束

    这一篇博客主要讲键的创建,约束的创建.修改对象和删除对象. 主键:主键是每行的唯一标识符,必须包含唯一值(因此不能为NULL).由于主键在关系中数据库的重要性,因此它是所有键和约束中最重要的.一个表最 ...

  7. SQL入门经典(四)之创建和修改数据表

    本章主要讲如何使用脚本创建数据库:如何使用脚本创建表:如何删除对象和修改对象. CREATE 语句:CREATE <object type> <onject name> 创建数 ...

  8. sql 入门经典(第五版) Ryan Stephens 学习笔记 后续——存储引擎

    一.引擎基础 1 查看系统支持的存储引擎 show engines; 2 查看表使用的存储引擎两种方法: a.show table status from database_name where na ...

  9. SQL入门经典(六) 之视图

    视图实际上就是一个存储查询,重点是可以混合和匹配来自基本表(或其他视图)的数据,从而创建在很多方面象另一个普通表那样的起的作用.可以创建一个简单的查询,仅仅从一个表(另一个视图)选择几列或几行,而忽略 ...

随机推荐

  1. Windows下的maven安装及配置

    有时候开发需要用到maven来进行项目管理,说下怎么配置maven吧 环境&工具: windows系统 jdk1.8 apache-maven-3.2.5.zip eclipse 首先需要去A ...

  2. Python 第一个Python项目Hello,Python 学习之路(二)

    print("Hello,Python")

  3. aspnet超级链接 传递 当前页面 textbox值

    一共有两个窗体. 第一个窗体A传参到窗体B  A的参数是A窗体的textbox 窗体A代码 <html xmlns="http://www.w3.org/1999/xhtml" ...

  4. SpringMVC 400 Bad Request 问题

    摘要 SpringMVC 400 Bad Request 在提交表单时,发生400错误,并未进入save方法. @RequestMapping(value="/!save",met ...

  5. 安装软件 报错1304 C:\Program Files\Common Files\VMware\VMware VMRC Plug-in\Firefox\dbghelp.dll验证您对该目录具有访问权限

    现在情况是C:\Program Files\Common Files\VMware\VMware VMRC Plug-in\Firefox这个文件夹里面没有dbghelp.dll文件,就需要在百度上面 ...

  6. rem介绍

    手机端开发,一般以320px宽为最低标题.市场上的手机,大多数是360px宽. 20px=1rem是最容易换算的,基本上可以口算,除以2并缩小十倍.1px/20=0.05rem.两位小数就可以除尽了. ...

  7. PoEdu - C++阶段班【Po学校】- Lesson03-4_构造函数&赋值函数&拷贝构造函数&学习方式 - 第6天

    PoEdu - C++阶段班[Po学校]- 第6天 课堂选择题目: 1  关于转换构造函数  ClassDemo demo = 1;  调用转换构造函数 2  关于拷贝赋值函数  demo =2; 首 ...

  8. arch linux 安装 之 ---GPT--引导篇

    新入一二手X240 ,直接格式化,装archLinux. 一.引导程序安装--------------- 1.首先搞清楚什么是UEFI Under UEFI下的引导顺序 System switched ...

  9. C# 在winform或者wpf中显示控制台窗口

    这儿需要使用两个系统函数: BOOL WINAPI FreeConsole(void); //// 关闭控制台窗口,参考:http://msdn.microsoft.com/en-us/library ...

  10. js动态时间

    一.在<head></head> 之间写入下面js代码 <script type="text/javascript" language="J ...