如何在JDBC中從表中檢索日期?
ResultSet 介面提供了一個名為 getDate() 的方法,此方法接受一個整型引數,表示需要從中檢索日期值的列的索引(或表示列名稱的字串引數)。要從表中檢索日期值,請執行以下操作:
使用DriverManager類的registerDriver()方法註冊驅動程式類。將驅動程式類名作為引數傳遞給它。
使用DriverManager類的getConnection()方法連線到資料庫。將URL(字串)、使用者名稱(字串)、密碼(字串)作為引數傳遞給它。
使用Connection介面的createStatement()方法建立一個Statement物件。
使用executeQuery()方法執行查詢。將檢索資料的select查詢(字串)作為引數傳遞給它。
從獲得的結果集物件中,使用ResultSet介面的getDate()方法獲取日期值(以及其他值)。將列名(字串)作為引數傳遞給它。
示例
假設資料庫中有一個名為Emp的表,如下所示:
+--------+------------+----------------+ | Name | DOB | Location | +--------+------------+----------------+ | Amit | 1989-09-26 | Hyderabad | | Sumith | 1989-09-01 | Vishakhapatnam | | Sudha | 1980-09-01 | Vijayawada | +--------+------------+----------------+
以下是一個JDBC示例,它使用ResultSet介面的getDate()和getString()方法從表中檢索日期和字串值。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class RetrievingDate { public static void main(String args[])throws Exception { //Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //Getting the connection String mysqlUrl = "jdbc:mysql:///sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //Creating Statement object Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("select * from Emp"); //Retrieving values while(rs.next()) { System.out.print("Name: "+rs.getString("Name")); System.out.print(" Date of Birth: "+rs.getDate("DOB")); System.out.print(" Location: "+rs.getString("Location")); System.out.println(); } } }
輸出
Connection established...... Name: Amit Date Of Birth: 1989-09-26 Location: Hyderabad Name: Sumith Date Of Birth: 1989-09-01 Location: Vishakhapatnam Name: Sudha Date Of Birth: 1980-09-01 Location: Vijayawada
廣告