sqlserver中创建包含事务的存储过程
2015-08-03 21:50
316 查看
什么是事务
事务时包含1条或多条语句的逻辑单元。事务中的语句是一个整体,要么一起提交,要么一起撤销。事务在提交前可以回滚,一旦提交就不能撤销修改了,是永久性的修改。
为什么使用事务
可以例举生活中的例子,比如银行转账:A向B转100万。程序的执行顺序:1.A账户减掉100万 2.B账户增加100万。若是都成功执行倒没什么,假设1成功执行,2执行失败,就会出问题。运用事务就不会出现这种问题,因为只要其中有一步操作失败,事务就会回滚,之前的所有操作将会被撤销。
事务的基本控制语句
1.BEGIN TRANSACTION:事务开始
2.COMMIT TRANSACTION:事务提交
3.ROLLBACK TRANSACTION:事务回滚
事务的特性(ACID)
1.ATOMIC(原子性):事务中程序是数据库的逻辑工作单元,对数据的修改要么全执行,要么全不执行。
2.CONSISTENT(一致性):事务执行前后数据一致,事务完成之后数据的修改才可见。
3.ISOLATED(隔离性):并发事务之间不能相互干扰
4.DURABLE(持久性):事务一旦提交就是对数据的永久修改。
下面是一个包含事务的存储过程的例子:
View Code
事务时包含1条或多条语句的逻辑单元。事务中的语句是一个整体,要么一起提交,要么一起撤销。事务在提交前可以回滚,一旦提交就不能撤销修改了,是永久性的修改。
为什么使用事务
可以例举生活中的例子,比如银行转账:A向B转100万。程序的执行顺序:1.A账户减掉100万 2.B账户增加100万。若是都成功执行倒没什么,假设1成功执行,2执行失败,就会出问题。运用事务就不会出现这种问题,因为只要其中有一步操作失败,事务就会回滚,之前的所有操作将会被撤销。
事务的基本控制语句
1.BEGIN TRANSACTION:事务开始
2.COMMIT TRANSACTION:事务提交
3.ROLLBACK TRANSACTION:事务回滚
事务的特性(ACID)
1.ATOMIC(原子性):事务中程序是数据库的逻辑工作单元,对数据的修改要么全执行,要么全不执行。
2.CONSISTENT(一致性):事务执行前后数据一致,事务完成之后数据的修改才可见。
3.ISOLATED(隔离性):并发事务之间不能相互干扰
4.DURABLE(持久性):事务一旦提交就是对数据的永久修改。
下面是一个包含事务的存储过程的例子:
CREATE TABLE [dbo].[Students]( [ID] [int] IDENTITY(1,1) NOT NULL primary key, [Name] [nvarchar](50) NOT NULL, [ClassId] [int] NOT NULL, [Age] [int] NOT NULL, [CreateTime] [datetime] NOT NULL );
View Code
相关文章推荐
- MySQL常用操作汇编
- sqlcode、sqlerrm
- SQL Server中的联合主键、聚集索引、非聚集索引、mysql 联合索引
- Install MariaDB Galera Cluster 10.0.20
- MongoDB——分片
- MongoDB——主从复制&副本集
- PreparedStatement是如何防止SQL注入的
- MySQL--SELECT
- MS SQL执行大脚本文件时,提示“内存不足”的解决办法
- MS SQL执行大脚本文件时,提示“内存不足”的解决办法
- 关于SQLSERVER2008R2安装问题
- 从AdventureWorks学习数据库建模——保留历史数据
- Sql Server 数据库还原(请勿模仿!)
- Sql Server 数据库还原(请勿模仿!)
- MongoDB 在windows shell环境下的基本操作和命令的使用示例(五)
- MongoDB——简介与安装
- redis 系列文章推荐
- SQL Server 存储过程之嵌套游标
- CentOS7安装redis数据库及php-redis扩展
- sql 基础