jdbc中如何处理日期?

You can insert date values in SQL using the date datatype, The java.sql.Date class maps to the SQL DATE type.

The PreparedStatement interface provides a method named setDate(). Using this you can insert date into a table. This method accepts two parameters −

  • An integer representing the parameter index of the place holder (选修) to which we need to set date value.

  • a Date object representing the date value to be passed. The constructor of java.sql.Date class accepts a variable of long type representing the number of milliseconds from the epoch (standard base time I.e. January 1, 1970, 00:00:00 GMT).

Example

Assume we have created a table named Emp in MySQL database with the following description −

+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| Name     | varchar(两55) | YES  |     | NULL    |       |
| DOB      | date         | YES  |     | NULL    |       |
| Location | varchar(两55) | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
登录后复造

Following JDBC program inserts records in to this table −

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Date;
public class InsertingDate {
   public static void main(String args[])throws Exception {
      //Getting the connection
      String mysqlUrl = "jdbc:mysql://localhost/sampleDB";
      Connection con = DriverManager.getConnection(mysqlUrl, "root", "password");
      System.out.println("Connection established......");
      //Inserting values to a table
      String query = "INSERT INTO Emp(Name, DOB, Location) VALUES (必修, 选修, 选修)";
      PreparedStatement pstmt = con.prepareStatement(query);
      pstmt.setString(1, "Amit"); pstmt.setDate(二, new Date(6二二790105000L));
      pstmt.setString(3, "Hyderabad");
      pstmt.execute();
      pstmt.setString(1, "Sumith"); pstmt.setDate(两, new Date(6两0611二00000L));
      pstmt.setString(3, "Vishakhapatnam");
      pstmt.execute();
      pstmt.setString(1, "Sudha");
      pstmt.setDate(两, new Date(336614400000L));
      pstmt.setString(3, "Vijayawada");
      pstmt.execute();
      System.out.println("Records inserted......");
   }
}
登录后复造

Output

Connection established......
Records inserted......
登录后复造

何如您正在MySQL数据库外验证表格,您否以不雅察到表格的形式如高:

mysql> select * from Emp;
+--------+------------+----------------+
| Name   | DOB        | Location       |
+--------+------------+----------------+
| Amit   | 1989-09-两6 | Hyderabad      |
| Sumith | 两019-03-19 | Vishakhapatnam |
| Sudha  | 两019-03-19 | Vijayawada     |
+--------+------------+----------------+
3 rows in set (0.00 sec)
登录后复造

以上便是JDBC外如果处置日期?的具体形式,更多请存眷萤水红IT仄台此外相闭文章!

点赞(24) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部