在数据库中为何要使用事务的原因总结
来源:互联网 发布:python opencv mask 编辑:程序博客网 时间:2024/05/22 03:45
/*--举例:为什么需要事务--*/
--同一银行,如都是农行的帐号,可以直接转账
/*---------------建表-----------------*/
USE stuDB
GO
--创建农行帐户表bank
IF EXISTS(SELECT * FROM sysobjects WHERE name='bank')
DROP TABLE bank
GO
CREATE TABLE bank
(
customerName CHAR(10), --顾客姓名
currentMoney MONEY --当前余额
)
GO
/*---添加约束:根据银行规定,帐户余额不能少于1元,除非销户----*/
ALTER TABLE bank
ADD CONSTRAINT CK_currentMoney CHECK(currentMoney>=1)
GO
/*--插入测试数据:张三开户,开户金额为800 ;李四开户,开户金额1 ---*/
INSERT INTO bank(customerName,currentMoney) VALUES('张三',1000)
INSERT INTO bank(customerName,currentMoney) VALUES('李四',1)
GO
--查看结果
SELECT * FROM bank
GO
/*--转帐测试:张三希望通过转账,直接汇钱给李四1000元--*/
--我们可能会这样这样写代码
--张三的帐户少1000元,李四的帐户多1000元
UPDATE bank SET currentMoney=currentMoney-1000
WHERE customerName='张三'
UPDATE bank SET currentMoney=currentMoney+1000
WHERE customerName='李四'
GO
--再次查看结果,结果发现了什么严重的错误?如何解决呢? 事务是最好的选择
SELECT * FROM bank
GO
- 在数据库中为何要使用事务的原因总结
- [转载]在不同的用户或数据库中使用事务
- 数据库中事务的使用
- 数据库为何要建立索引的原因说明(不错)
- 数据库为何要建立索引的原因说明(不错)
- 数据库为何要建立索引的原因说明
- 在 .NET中使用Oracle数据库事务
- 在 .NET中使用Oracle数据库事务
- 在 .NET 中使用 Oracle 数据库事务
- 在.NET中使用Oracle数据库事务
- 在.NET中使用Oracle数据库事务
- 在Spring Boot中使用数据库事务
- 在Spring Boot中使用数据库事务
- 在项目中为何要使用Spring
- 为何要在GLSL中使用UBO
- 为何要在GLSL中使用UBO
- 在Laravel中使用数据库事务以及事务失败后的异常处理
- Tomcat使用DBCP为何需要在Tomcat的lib引入JDBC驱动的原因
- C日记
- 数据库学习资料大全
- magento 商城目录结构说明
- VC 程序调用 Mspaint 打开图片
- 搞不懂
- 在数据库中为何要使用事务的原因总结
- 在JS的(字符串)数组中针对每个元素的内容进行查找和替换
- Android 组件系列(1):自动完成输入内容的组件(AutoCompleteTextView )
- js中替换字符串
- C++学习体会
- HTTP 500 - 内部服务器错误
- 1.2 Excel环境中基于应用程序的自动化的优点
- 1.3 录制简单的宏
- MySQL实际操作正与误