From d82fd480696499e2aceecdf0ff2070286b82c63f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E9=B9=8A=E6=9D=83?= <1773509020@qq.com> Date: Thu, 17 Oct 2024 09:28:41 +0000 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 苏鹊权 <1773509020@qq.com> --- ...40\344\270\216\344\275\234\344\270\232.md" | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 "\350\213\217\351\271\212\346\235\203/20241017 \344\272\213\345\212\241\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" diff --git "a/\350\213\217\351\271\212\346\235\203/20241017 \344\272\213\345\212\241\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" "b/\350\213\217\351\271\212\346\235\203/20241017 \344\272\213\345\212\241\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" new file mode 100644 index 0000000..d071479 --- /dev/null +++ "b/\350\213\217\351\271\212\346\235\203/20241017 \344\272\213\345\212\241\347\273\203\344\271\240\344\270\216\344\275\234\344\270\232.md" @@ -0,0 +1,51 @@ +```sql + +create table bank( + id int primary key auto_increment , + username varchar(10), + money int +); + +INSERT INTO `bank` VALUES (1, '张三', 100); +INSERT INTO `bank` VALUES (2, '李四', 200); + + + +## 练习题: + +-- 1, 手动关闭系统全局的全动提交。查询表内容,新增一个自己的帐号,和金额,最后回滚。再查询表内容; +set autocommit = 0; +select * from bank; +INSERT INTO `bank` VALUES (3, '墩子', 300); +rollback; +select * from bank; +-- 2,用 START TRANSACTION 开启事务,查询表内容,把李四的金额改成5000,回滚事务,再查询表内容; +start transaction; +update bank set money = 5000 where id= 2; +select * from bank; +rollback; +select * from bank; +-- 3,用 START TRANSACTION 开启事务,查询表内容,把李四的金额改成5000,提交事务,再查询表内容; +start transaction; +select * from bank; +update bank set money=5000 where id =2; +select * from bank; +commit; +select * from bank; + +-- 4,用 START TRANSACTION 开启事务,查询表内容,把张三的金额改成666,设置保存点s1,用自己姓名添加个新账户,金额888888,设置保存s2,回滚到s1保存点,再查询表内容; +start transaction; +select * from bank; +update bank set money=666 where id =1; +select * from bank; +SAVEPOINT s1; +INSERT INTO `bank` VALUES (4, '小小苏', 88888); +select * from bank; +SAVEPOINT s2; +rollback to s1; +select *from bank; + +-- 5,[作业]创建一个实现银行转账业务的存储过程transfer(),传入合适的参数如转出账户编号,转入账户编号,转账金额,返回是否转账成功。 +-- 提醒.要考虑转出金额不足的情况 +``` + -- Gitee