Java——JDBC(MySQL)

本文详细介绍了使用Java JDBC进行数据库操作的方法,包括加载驱动、获取连接、执行SQL语句等核心流程,并展示了如何使用Statement与PreparedStatement执行不同类型的SQL语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常用类和接口

1.DriverManager类:用来管理数据库中的所有驱动程序

    常用方法getConnection(String url,String user,String password)

     指定3个入口参数,依次是连接数据库的URL、用户名、密码,来获取与数据库的连接

2.Connection接口:代表与特定的数据库的连接,要对数据表中的数据进行操作,首先要获取数据库连接。

    常用方法①:createStatement()   创建Statement对象

                 ②:preparedStatement()    创建预处理对象PreparedStatement

3.Statement接口:    用于创建向数据库中传递SQL语句的对象。

    常用方法:①executeQuery(String sql)    执行给定的SQL语句(查询SELECT),返回单个ResultSet对象

                    ②executeUpdate(String sql)   执行给定的SQL语句(增删改),INSERT、UPDATE、DELETE语句

4.PreparedStatement接口:继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行的SQL语句,将被预编译并保存到PreparedStatement实例中,从而可以反复的执行该SQL语句。

    常用方法参考Statement接口

5.ResultSet接口:类似于一个临时表,用来暂时存放数据库查询操作所获得的结果集。

    ResultSet对象具有指向当前数据行的光标。最初,光标被置于第一行之前,可以通过该对象的next()方法将光标移动到下一行;如果ResultSet对象没有下一行,next()方法返回false,所有可以在while循环使用next()方法迭代结果集。

ResultSet rst=stm.executeQuery(sql);
			String username,passwd;
			System.out.println("用户名\t密码");
			while(rst.next()){
				username=rst.getString("username");
				passwd=rst.getString("password");
				System.out.println(username+"\t"+passwd);
			}
    ResultSet对象的getxxx()方法可获取查询结果集中数据,由于ResultSet中保存的数据是表的形式,因此可通过使用getxxx()方法指定列的序号或列的名称来获取数据。


通过JDBC操作数据库的步骤

    首先要加载数据库驱动,数据库驱动只需在第一次访问数据库时加载依次。然后在每次访问数据库时创建一个Connection实例,获取数据库连接;再获取Statement实例,用此来执行SQL语句,最后完成数据库操作时,释放与数据库的连接Connection.close()。

Class.forName("com.mysql.jdbc.Driver");		//加载数据库驱动
			String url="jdbc:mysql://localhost:3306/new_database";
			String user="root";
			String password="369789";
			Connection con=DriverManager.getConnection(url, user, password);	//创建连接对象
			Statement stmt=con.createStatement();							//获取Statement实例
			String sql="insert into tb_aa(username,password) values('王五','123456')";
			stmt.executeUpdate(sql);					//执行SQL语句
			con.close();								//释放与数据库连接


preparedstatement

Class.forName("com.mysql.jdbc.Driver");		//加载数据库驱动
			String url="jdbc:mysql://localhost:3306/new_database";
			String username="root";
			String password="369789";
			//建立连接
			Connection con =DriverManager.getConnection(url,username,password);
			//生成一条sql语句
			String sql="insert into tb_aa (username,password) values (?,?);";
			PreparedStatement pst=con.prepareStatement(sql);
			pst.setString(1, "小明");
			pst.setString(2, "22222222");
			pst.executeUpdate();
			con.close();

    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值