步骤:
//1.导入驱动jar包
//注册驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//获取数据库连接对象
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");
//定义sql语句
String sql = "update cxd set age = 40 where id= 1";
//获取执行sql语句的对象
Statement stmt = conn.createStatement();
//执行sql
int count = stmt.executeUpdate(sql);
//处理结果
System.out.println(count);
//释放资源
stmt.close();
conn.close();
详解各个对象:
1.DriverManager:驱动管理对象
功能:
1.注册驱动:告诉程序该使用那个使用哪一个数据库驱动jar包
static void registerDriver(Driver driver) 注册与给定的驱动程序 DriverManager
写代码使用:Class.forName("com.mysql.cj.jdbc.Driver");
通过查看源码发现:在com.mysql.cj.jdbc.Driver类中存在静态代码块
注意mysql之后的驱动jar包可以省略注册驱动的步骤
2.获取数据库连接:
方法:static Connection getConnection(String url, String user, String password)
参数:
url:指定连接的路径
语法:jdbc:mysql://ip地址(域名):端口号/数据库名称
例:jdbc:mysql://localhost:3306/test
注:如果连接的是本机的mysql服务器,并且mysql服务器默认端口是3306,
则url可以简写为jdbc:mysql:///test
user:用户名
password:密码
尝试建立与给定数据库URL的连接。
2.Connection:数据库连接对象
1.获取执行sql的对象
Statement createStatement()
PreparedStatement prepareStatement(String sql)
2.管理事务:
开启事务:void setClientInfo(Properties properties) :调用该方法设置参数为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)语句
返回值:影响的行数,可以通过影响的行数判断DML语句是否成功 返回值大于零则执行成功
3.ResultSet executeQuery(String sql) :执行DQL(select)语句
4.ResultSet:结果集对象,封装查询结果
next(): 游标向下移动一行,判断当前行是否是最后一行末尾(是否有数据),如果是返回false,则true
getXxx(): 获取数据
Xxx:代表数据类型 如: int getInt(), String getString();
参数:
1.int: 代表列的编号,从1开始 如:getString(1)
2.String:代表列的名称 如: getDouble("age")
注意:
使用步骤:
1.游标向下移动一行
2.判断是否有数据
3.获取数据
//循环判断游标是否是最后一行末尾
while(rs.next()){
//获取数据
String name = rs.getString("name");
double ble = rs.getDouble(2);
String age = rs.getString("sex");
int id = rs.getInt(4);
System.out.println(name+"---"+ble+"---"+age+"---"+id+"---");
}
5.PreparedStatement:执行sql对象(比Statement更强大)



