2024/10/18日 日志 --》关于MySQL中的 事务 以及JDBC的初步学习笔记与整理

今天学习练习了事务的相关内容,并正式向连接数据库走近,进入到JDBC的学习。

点击查看代码
-- 事务
-- 概念简介:是一种机制,一个操作序列,包含了一组数据库操作命令。
-- 		事务把所有的命令作为一个整体一起向系统提交或撤销操作请求,
--    即这一组数据库命令要么同时成功,要么同时失败。
--    事务是一个不可分割的工作逻辑单元。
-- -- 开启事务
-- START TRANSACTION; 或者 BEGIN;
-- -- 提交事务
-- COMMIT;
-- -- 回滚事务
-- ROLLBACK;
-- 示例 :转账操作
-- 开启事务
-- 	BEGIN;	
-- 1.查询李四的金额	
-- 	SELECT money FROM account WHERE name = '李四';
-- 2.李四金额 -500
-- 	UPDATE account set money = money - 500 where name = '李四';
-- 3.张三金额  +500
-- 	UPDATE account set money = money + 500 where name = '张三';
-- 若出错则回滚事务
-- ROLLBACK;
-- 若无错误则提交事务
-- COMMIT;
-- 
-- 事务四大特征 ACID
-- ·原子性(Atomicity)  :事务是不可分割的最小操作单位,要么同时成功,要么同时失败。
-- ·一致性(Consistency):事务完成时必须使所有的数据都保持一致状态。
-- ·隔离性(Isolation)  :多个事务之间,操作的可见性。
-- ·持久性(Durability) :事务一旦提交或回滚,它对数据库中数据的改变就是永久的。
--
-- Mysql 中的事务默认是自动提交的
-- SELECT @@autocommit;
-- 1 自动提交 0 手动提交
-- 修改事务提交方式: set @@autocommit = 0;
--
-- JDBC
-- ·JDBC概念:
-- 	·JDBC就是Java语言操作关系型数据库的一套API,标准接口
-- 	·全称:(Java DataBase Connectivity)Java数据库连接
-- JDBC本质:
-- ·官方(sun公司)定义的一套操作所有关系型数据库的规则,即接口
-- ·各个数据库厂商去实现这套接口,提供数据库驱动jar包
-- 我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类 	
-- JDBC好处:
-- ·各数据库厂商使用相同的接口,java代码不需要针对不同数据库分别开发
-- ·可随时替换底层数据库,访问数据库的java代码基本不变
--
-- 步骤:
-- 0.创建工程,导入驱动jar包
-- 
-- 1.注册驱动
-- Class.forName("com.mysql.jdbc.Driver");
-- 2.获取连接
-- Connection conn = DriverManager.getConnection(url,username,password);
-- 3.定义SQL语句
-- String sql = "update...";
-- 4.获取执行SQL对象
-- Statement stmt = conn.createStatement();
-- 5.执行SQL
-- stmt.executeUpdate(sql);
-- 6.处理返回结果
-- 7.释放资源
--
-- 模板:
--
-- //1.注册驱动
-- Class.forName("com.mysql.jdbc.Driver");
-- //2.获取连接对象
-- String url = "jdbc:mysql://127.0.0.1:3306/db1?useSSL=false";
-- String username = "root";
-- String password = "1234";
-- Connection conn = DriverManager.getConnection(url, username, password);

-- //3.定义SQL
-- String sql = "update account set money = 2000 where id = 1";
-- //4.获取执行sql的对象
-- Statement stmt = conn.createStatement();
-- //5.执行sql
-- int count = stmt.executeUpdate(sql);
-- //6.处理结果
-- //System.out.println(count);
-- //7.释放资源
-- stmt.close();
-- conn.close();
-- 
                                                                                                                                            -------Moonbeams.
posted @   Moonbeamsc  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
返回顶端
点击右上角即可分享
微信分享提示