如何在 JDBC 中从表中获取时间?


ResultSet 接口提供一个名为 getTime() 的方法,该方法接收一个整数参数,表示列的索引(或一个字符串参数,表示列的名称),你需要从中获取时间值。要从表中获取时间值 -

  • 使用 DriverManager 类的 registerDriver() 方法注册驱动程序类。将驱动程序类名作为参数传递给它。

  • 使用 DriverManager 类的 getConnection() 方法连接到数据库。将 URL(字符串)、用户名(字符串)、密码(字符串)作为参数传递给它。

  • 使用 Connection 接口的 createStatement() 方法创建一个 Statement 对象。

  • 使用 executeQuery() 方法执行查询。将用来检索数据(字符串)的 select 查询作为参数传递给它。

  • 从获得的 ResultSet 对象中使用 ResultSet 接口的 getTime() 方法获取时间值(以及其他值)。将列的名称(字符串)作为参数传递给该方法。

示例

假设我们在数据库中有一个名为 dispatches 的表,其中包含以下详细信息 -

+--------------+------------------+------------------+----------------+
| Product_Name | Date_Of_Dispatch | Time_Of_Dispatch | Location       |
+--------------+------------------+------------------+----------------+
| KeyBoard     | 2019-09-01       | 05:30:00         | Hyderabad      |
| Earphones    | 2019-05-01       | 05:30:00         | Vishakhapatnam |
| Mouse        | 2019-03-01       | 05:29:59         | Vijayawada     |
+--------------+------------------+------------------+----------------+

以下是 JDBC 示例,它使用 ResultSet 接口的 getDate() 和 getString() 方法从表中检索日期和字符串值。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class RetrievingTime {
   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://127.0.0.1/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 Dispatches");
      //Retrieving values
      while(rs.next()) {
         System.out.println("Product Name: "+rs.getString("Product_Name"));
         System.out.println("Date Of Dispatch: "+rs.getDate("Date_Of_Dispatch"));
         System.out.println("Date Of Dispatch: "+rs.getTime("Time_Of_Dispatch"));
         System.out.println("Location: "+rs.getString("Location"));
         System.out.println();
      }
   }
}

输出

Connection established......
Product Name: KeyBoard
Date Of Dispatch: 2019-09-01
Date Of Dispatch: 05:30:00
Location: Hyderabad
Product Name: Earphones
Date Of Dispatch: 2019-05-01
Date Of Dispatch: 05:30:00
Location: Vishakhapatnam
Product Name: Mouse
Date Of Dispatch: 2019-03-01
Date Of Dispatch: 05:29:59
Location: Vijayawada

更新于: 2019 年 7 月 30 日

358 次浏览

开启你的 事业

完成课程取得认证

开始学习
广告