SQL数据库 T-SQL编程与事务管理

-- T-SQL 数据库编程1.
-- 使用变量:局部变量和全局变量
--局部变量 用户自定义变量 以标记@作为前缀 先声明才赋值
declare @age int --变量的声明
set  @age=10 --变量的赋值
select @age=20 --也是赋值
print @age
declare @name varchar(20)
--select @age=id from c where id=3
--print @age --(使用查询语句赋值)


-- 全局变量 系统变量 都使用两个@标志作为前缀  不用声明 直接使用
select @@version --(该数据库的版本)  
select @@error --(错误信息的编号)  
select @@identity --(返回的是计数器的值)


-- 流程控制语句
--条件
if(条件)
begin
...
end
else
begin
...
end

-- 循环结构
while() 
begin 
...
end

-- 逻辑控制语句
--case end 多分支语句
case
when 条件1 then 结果1
when 条件2 then 结果2
...
else 其他结果
end


select ExanmNo,stuNo,writtenExam,
case
when 条件1 then 结果1
when 条件2 then 结果2
...
else 其他结果
end as '等级' from stuMarks
--批处理命令 go


--事务管理 事务控制
--事务必须具备四个属性:原子性,一致性,隔离性,永久性。(ACID)
 --T-SQL使用下列语句来管理事务
--开始事务:begin transaction
--提交事务:commit transaction
--回滚(撤销)事务:rollback transaction(rollback transaction 标记名 --还原到指定位置)
--保存回滚点:save transaction 标记名  --指定还原点
--   一旦事务提交或回滚,则事务结束。


create table a
(
id int,
name varchar(10)
)
begin transaction
insert into a values (1,'a')
insert into a values (2,'b')
save transaction t1
insert into a values (3,'c')
insert into a values (4,'d')
save transaction t2
insert into a values (5,'d')
insert into a values (6,'d')
save transaction t3
insert into a values (7,'d')
insert into a values (8,'d')
insert into a values (9,'d')
rollback transaction t2 --还原到t2的位置  

select *from a 





--------携着一股什么也不服的劲在活着


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值