大家好,我是 Java 进阶者,今天给大家介绍的是如何使用 Statement 接口实现查询查询数据、添加数据。
一、前言
在 JDBC 技术中,不同的数据库需要不同的驱动程序,先加载驱动程序,接着数据库的连接后,再使用SQL语句来执行数据库。本文给大家介绍的是如何使用Statement接口实现查询查询数据、添加数据,接下来,小编带大家一起来学习!
二、JDBC的基本应用
1.在程序中和某个数据库进行连接之后,可以使用SQL语句和该数据库中的表进行交互信息,例如,通过增、删、改、查的方式来操作表中的记录。这些交互是通过JDBC的一个API接口实现的。JDBC提供的Statement接口向数据库发送SQL语句,执行SQL语句返回一个结果保存在一个ResultSet对象中,调用该对象的next()方法来获取数据。
2.使用Statement接口查询数据的步骤如下所示:
1)首先导入拓展包[mysql-connector-java-5.1.7-bin.jar],在Ecilpse编辑软件的当前项目右键选择[Bulid Path],再选择[Configure Build Path...],选择Libraies,在右边有个[Add External JARs...]按钮把这个拓展包加进来,然后点击[OK]。具体操作如下图所示:
2)使用Class.forName()方法来加载驱动程序。
3)成功加载驱动程序后,Class.forName()方法向DriverManager注册自己,接着使用getConnection()方法和数据库进行连接,返回一个Connection对象。
4)使用Connection对象的createStatement()方法创建一个Statement对象。
5)使用Statement对象调用executeQuery()方法查询数据库表,把查询的结果存储在一个ResultSet对象。
6)使用ResultSet对象的next()方法,获取表中的数据。
三、通过一个案例了解Statement接口查询数据的用法
1.在上面介绍了Statement接口查询数据的具体步骤,接下来,小编带着大家一起来了解Statement接口查询数据的用法,student表中的数据和代码如下所示:
student表中的数据:
代码:
import java.sql. Connection ; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Scanner; public class Example30 { public static void main(String[] args) { System. out .println( "请输入你要查询的ID:" ); Scanner sc=new Scanner(System. in ); String input=sc. next (); String driver= "com.mysql.jdbc.Driver" ; try { //加载驱动 Class.forName(driver); //数据库地址,本机、端口号3306、数据库名为test String url= "jdbc:mysql://localhost:3306/test" ; //用户名 String user = "root" ; //密码 String pwd= "168168" ; //连接数据库 Connection conn=DriverManager.getConnection(url, user ,pwd); //创建Statement对象 Statement stmt=conn.createStatement(); String sql= "select * from student where id='" +input+ "'" ; //执行SQL语句 ResultSet rs=stmt.executeQuery(sql); //根据用户输入的ID值获取数据 if(rs. next ()){ System. out .println( "id:" +rs.getString( "id" )+ " name:" +rs.getString( "name" )+ " age:" +rs.getInt( "age" )); } else { System. out .println( "你输入的ID不存在!" ); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }效果图如下所示:
在上面代码中,首先是加载驱动程序,之后使用getConnection()方法来连接数据库,创建Statement对象,调用Connection对象的createStatement()方法创建这个MySQL语句对象,在这个对象调用executeQuery()方法来处理查询的结果。
四、Statement接口添加数据实现步骤
1.首先导入拓展包[mysql-connector-java-5.1.7-bin.jar],在Ecilpse编辑软件的当前项目右键选择[Bulid Path],再选择[Configure Build Path...],选择Libraies,在右边有个[Add External JARs...]按钮把这个拓展包加进来,然后点击[OK]。具体操作如下图所示:
2.使用Class.forName()方法来加载驱动程序。
3.成功加载驱动程序后,Class.forName()方法向DriverManager注册自己,接着使用getConnection()方法和数据库进行连接,返回一个Connection对象。
4.使用Connection对象的createStatement()方法创建一个Statement对象。
5.使用Statement对象调用executeUpdate()方法查询数据库表,把查询的结果存储在一个ResultSet对象。
6.使用ResultSet对象的next()方法,获取表中的数据。
五、通过一个案例了解Statement接口添加数据的用法
1.在上面介绍了Statement接口添加数据的实现步骤,接下来,小编带着大家一起来了解Statement接口添加数据的用法,代码如下所示:
import java.sql. Connection ; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Scanner; public class Example31 { public static void main(String[] args) { Scanner sc=new Scanner(System. in ); System. out .println( "请输入你要添加的ID:" ); String id=sc. next (); System. out .println( "请输入你要添加的Name:" ); String name =sc. next (); System. out .println( "请输入你要添加的Age:" ); int age=sc.nextInt(); String driver= "com.mysql.jdbc.Driver" ; try { //加载驱动 Class.forName(driver); //数据库地址,本机、端口号3306、数据库名为test String url= "jdbc:mysql://localhost:3306/test" ; //用户名 String user = "root" ; //密码 String pwd= "168168" ; //连接数据库 Connection conn=DriverManager.getConnection(url, user ,pwd); //创建Statement对象 Statement stmt=conn.createStatement(); String sql= "insert into student values('" +id+ "','" + name + "'," +age+ ")" ; //执行SQL语句 stmt.executeUpdate(sql); sql= "select * from student where id='" +id+ "'" ; //执行SQL语句 ResultSet rs=stmt.executeQuery(sql); //根据ID值获取数据 if(rs. next ()){ System. out .println( "id:" +rs.getString( "id" )+ " name:" +rs.getString( "name" )+ " age:" +rs.getInt( "age" )); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }效果图如下所示:
表中的数据:
在上面代码中,首先是加载驱动程序,之后使用getConnection()方法来连接数据库,创建Statement对象,调用Connection对象的createStatement()方法创建这个MySQL语句对象,在这个对象调用executeUpdate方法来处理。
六、总结
1.本文介绍了Statement接口实现查询数据、添加数据。
2.在JDBC的基本应用中,介绍了使用Statement接口查询和添加数据的步骤。重点在于使用getConnection()方法来连接数据库,创建Statement对象,调用Connection对象的createStatement()方法创建这个MySQL语句对象。
3.针对接口查询数据,在这个对象调用executeQuery()方法来处理查询的结果;针对接口添加数据,在这个对象调用executeUpdate方法来处理。并通过一个具体的案例来帮助大家了解它的用法。
4.希望大家通过本文的学习,对你有所帮助!
最后需要拓展包的小伙伴,可以在公众号后台回复[拓展包]关键字进行获取。
我是Java进阶者,希望大家通过本文的学习,对你有所帮助!
原文链接:https://mp.weixin.qq.com/s/A4Umd_3CXl9bev9ebznXNg
查看更多关于JDBC中Statement接口实现查询数据、添加数据的详细内容...