原文: https://howtodoinjava.com/java/jdbc/jdbc-select-query-example/
在以前的文章中,我们了解了 JDBC 驱动的类型和如何使用 JDBC 建立数据库连接。 让我们继续前进,并开始与数据库进行交互。 我要举的第一个示例是 SQL SELECT
查询。
执行 SQL SELECT
查询以获取存储在关系数据库中的数据。 它需要执行以下步骤:
1)建立数据库连接
2)执行 SQL 查询
3)从结果集中获取数据
前提条件至少包括设置数据库架构和创建表。
CREATE SCHEMA 'JDBCDemo' ;
CREATE TABLE 'JDBCDemo'.'EMPLOYEE'
(
'ID' INT NOT NULL DEFAULT 0 ,
'FIRST_NAME' VARCHAR(100) NOT NULL ,
'LAST_NAME' VARCHAR(100) NULL ,
'STAT_CD' TINYINT NOT NULL DEFAULT 0
);
让我们在代码中编写以上步骤:
1)建立数据库连接
尽管我们已经在建立 JDBC 连接中了解了它,但是让我们用这个简单的代码片段来回顾一下。
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager
.getConnection("jdbc:mysql://localhost:3306/JDBCDemo", "root", "password");
2)执行 SQL 查询
这是帖子中的主要步骤和核心部分。 它需要创建Statement
对象,然后使用其executeQuery()
方法。
Statement selectStmt = connection.createStatement();
ResultSet rs = selectStmt
.executeQuery("SELECT ID,FIRST_NAME,LAST_NAME,STAT_CD FROM EMPLOYEE WHERE ID <= 10");
3)从结果集中获取数据
您可以使用ResultSet
中提供的各种getXXX()
方法。 但是,如果要使其通用,请使用getString()
方法并在需要时解析数据。
ResultSet rs = selectStmt
.executeQuery("SELECT ID,FIRST_NAME,LAST_NAME,STAT_CD FROM EMPLOYEE WHERE ID <= 10");
while(rs.next())
{
System.out.println(rs.getString(1)); //First Column
System.out.println(rs.getString(2)); //Second Column
System.out.println(rs.getString(3)); //Third Column
System.out.println(rs.getString(4)); //Fourth Column
}
让我们看看整个代码在工作。
package com.howtodoinjava.jdbc.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class SelectDataDemo {
public static void main(String[] args) {
Connection connection = null;
Statement insertStmt = null;
Statement selectStmt = null;
try
{
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/JDBCDemo", "root", "password");
/*insertStmt = connection.createStatement();
insertStmt.execute("INSERT INTO EMPLOYEE (ID,FIRST_NAME,LAST_NAME,STAT_CD) VALUES (1,'Lokesh','Gupta',5)");
insertStmt.execute("INSERT INTO EMPLOYEE (ID,FIRST_NAME,LAST_NAME,STAT_CD) VALUES (2,'howtodoinjava','com',5)");*/
selectStmt = connection.createStatement();
ResultSet rs = selectStmt.executeQuery("SELECT ID,FIRST_NAME,LAST_NAME,STAT_CD FROM EMPLOYEE WHERE ID <= 10");
while(rs.next())
{
System.out.println(rs.getString(1)); //First Column
System.out.println(rs.getString(2)); //Second Column
System.out.println(rs.getString(3)); //Third Column
System.out.println(rs.getString(4)); //Fourth Column
}
}
catch (Exception e) {
e.printStackTrace();
}finally {
try {
selectStmt.close();
insertStmt.close();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Output:
1
Lokesh
Gupta
5
2
howtodoinjava
com
5
以上就是这篇文章。 如果需要解释,请给我评论。
快乐学习!