1.注册驱动(作用:告诉java程序,即将要连接的是哪个品牌的数据库)
Class.forName("com.mysql.jdbc.Driver");
2.获取连接(表示JVM进程和数据库进程之间的通道打开了,这属于进程之间的通信,很重要。使用后一定要进行关闭 )
Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db","root","123456");
3.获取数据库的操作对象(专门执行sql语句的对象)
//定义sql语句
String sql = "update account set balance = 500 where id = 1";
//获取执行sql的对象,Statement
Statement stmt = conn.createStatement();
4.执行sql语句
int count = stmt.executeUpdate(sql);
5.处理查询的结果集(只有4为select语句的时候,才有本步骤)
6.释放资源(使用完资源后一定要关闭资源,Java和数据库之间的通信数据进程间的通信开后后一定要关闭)
stmt.close();
conn.close();
================================================================================================
JDBC中的各个对象
1.DriverManager:驱动器管理对象
*功能:
1)注册驱动:告诉程序使用哪个哪个数据库jar包
static void registerDriver(Driver driver)throws SQLException:注册给定驱动程序
写代码时使用:Class.forName("com.mysql.jdbc.Driver"); com.mysql.jdbc.mysql中有register的静态代码块
2)获取数据库连接对象
方法:static Connection getConnection(String url,String user,String password) ;
参数:
*url:指定连接的路径,语法:jdbc:mysql://ip地址(域名):端口号/数据库名
*user:用户名
*password:密码
2.Connection:数据库连接对象
*功能:
1)获取执行sql的对象
*Statement createStatement();
*PreparedStatement prepareStatement(String sql);
2)管理事务
*开启事务:setAutoCommit(boolean autoCommit),调用该方法设置参数为false,即开启事务
*提交事务:commit()
*回滚事务:rollback()
3.Statement:执行SQL对象
*执行sql:
1)boolean execute(String sql),可以执行任意的sql
2)int executeUpdate(String sql) ,执行DML(insert、update、delete)语句、DDL(create、alter、drop)语句
返回类型为int,返回的是影响的行数,可以通过影响的行数来判断DML语句是否执行成功
3) ResultSet executeQuery(String sql),执行DQL(select)语句
4.ResultSet:结果集对象
*next():将光标从当前位置向前移一行
*getXxx(参数):获取数据
Xxx代表数据类型,如int getInt()、String getString()
参数:1.int:代表列的编号。如getSting(1)
2.String:代表类的名称。如getDouble("balance")
*注意:
使用步骤:1.游标向下移动一行;2.判断是否有数据;3.获取数据
5.PreparedStatement:执行SQL对象