- 4
- 0
- 约9.24千字
- 约 68页
- 2016-09-14 发布于重庆
- 举报
数据库系统事务管理.ppt
事务管理 事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位 事务和程序是两个概念 在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序 一个应用程序通常包含多个事务 SQL编程基础 事务管理 存储过程 触发器 SQL编程基础 1、函数 字符串函数 日期和时间函数 数学函数 转换函数 系统函数 用户自定义函数 2、流程控制语句 (1)if…else语句 if 条件表达式 语句1|语句块1 [else 语句2|语句块2] 可以多层嵌套 (2)begin…end 语句 begin 语句|语句块[…n] end (3)while…continue..break语句 while 条件表达式 语句或语句块[break|continue] 3、goto语句 goto label 程序中有一行语句以label:开头 [例] 利用goto语句求1加到5的总和。 分析: (1)需要两个变量存储变量值和和值,用select 语句赋初值分别为1和0 (2)goto执行完一次以后转到label_1处循环执行 (3)经过5次循环,求出结果 declare @count int,@sum int /*声明变量*/ select @count=1,@sum=0 /*变量赋初值*/ label_1: /*循环标识位置*/ select @sum=@sum+@count /*循环部分 select @count=@count+1 */ if @count=5 /*条件判断语句*/ goto label_1 select @sum,@count /*查询输出结果*/ 4、return语句 无条件终止查询或存储过程,位于return语句后的程序将不会被执行。 return [整数] 5、打印输出语句 print ‘字符串’|@局部变量|@@全局变量 [例] 利用print语句判断变量值 declare @sum int /*声明变量*/ select @sum=5 /*变量赋初始值*/ if @sum=5 /*if…else语句*/ print ‘sum值不大于5’ /*输出结果语句*/ else print ‘sum大于5’ 6、注释语句 (1)整块注释 /*注释块*/ (2)从行的后部分注释 语句-注释 事务管理 事务管理语句: begin transaction /*事务开始*/ SQL语句组 commit transaction /*提交事务*/ 事务只使用于数据修改语句 在提交事务之前可以取消事务并撤消对数据的修改,提交之后不能取消; rollback transaction [savepoint_name] savepoint_name:标记事务回滚的保存点 [例] 建立一个事务,将course表中cno字段为1的记录的cname值更改为“大学英语” begin transaction update course /*更改表中数据*/ set cname=‘大学英语’ where cno=1 commit transaction 事务执行后,可以使用查询语句查询修改后的表 select * from course where cno=1 [例] 建立一个事务,用来更改course表中cno为1以及cno为2的记录的cname字段的值,分别更改为“大学英语”和“线性代数”,并回滚到事务保存点,并查看事务的执行结果。 (1)建立事务 begin transaction save transaction A update course set cname=‘大学英语’ where cno=1 save transaction B update course set cname=‘线性代数’ where cno=2 rollback transaction B commit transaction (2)查看事务执行 select * from course where cno=1 select * from course where cno=2 存储过程 SQL Server提供了一种方法,它可以将一些固定的操作集中起来由SQL Server数据库服务器来完成,以实现某个任务,这种方法就是存储过程。 在SQL Server中存储过程分为两类:即系统存储过程和用户自定义的存储过程。 存储过程和视图
原创力文档

文档评论(0)