《JDBC》
事务的四大特性 ACID ,
原子性,一致性 持久性 ,隔离性
mysql有四种语句
-
DDL 建库,建表,建索引
-
DML 增删改操作
-
DQL 查询操作
-
DCL 对数据库的用户进行管理
我们现在默认使用的都是root用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。
mysql 操作事物的语句
开始事务 start transaction
提交事务 commit
回滚事务 rollback
设置回滚点 rollback to 名字
查询事务的自动提交情况 select@@ autocommit
设置事务的手动提交方式 set @@ autocommit=1/0
理解JDBC的概念
- 由一组接口组成,实现类由数据库厂商实现
- 我们写的代码可以访问不同的数据库
Statement接口 代表要执行的SQL语句
在实际的应用中很少去使用JDBC来执行DDL语句,因为建库或建表这些代码会在mysql中先写好并执行。
通常是执行DML或DQL比较多
DriverManager类
Connection接口表示一个连接对象;
Statement接口表示一条要执行的SQL语句
ResultSet接口表示服务器查询的结果集
通过DriverManager类注册驱动,由系统自动完成
2. 获取连接对象Connection,如果得到连接对象就表示创建连接成功。
3. 发送SQL语句到服务器端,由服务器执行增删改查的操作,通过Statement对象来发送。
4. 查询到的结果集,通过ResultSet对象封装,返回给客户端
Connection getConnection (String url, String user, String password)
指定URL,用户名,密码获取连接对象
Connection getConnection (String url, Properties info)
指定URL,指定属性集合获取连接对象
每次访问数据库之前,第一件事情是创建连接对象,代表数据库连接对象1. 由DriverManager来创建
2. 创建语句对象:Statement
Connection接口中的方法 Statement createStatement()通过连接对象创建语句对象
int executeUpdate(String sql) 作用:用来执行DML中增删改操作 返回值:受影响的行数
ResultSet executeQuery(String sql)作用:用来执行DQL查询操作
使用JDBC操作事务
Connection接口中与事务有关的方法 | 说明 |
---|---|
void setAutoCommit(boolean autoCommit) | 设置为false,表示手动提交事务 |
void commit() | 提交事务 |
void rollback() | 回滚事务 |