有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何使用java在SQLServer2005中存储日期

我正在尝试在SQLServer2005中存储日期

我在sql server中使用“datetime”数据类型

在java程序中,我将字符串作为日期传递

String Date = "12/12/2013";
String sql = "INSERT INTO info (date) VALUES ( ? )";

try {
      pstmt = con.prepareStatement(sql);
      pstmt.setString(1, Date); // or pstmt.setDate(1, Date); both not working
      pstmt.executeUpdate();
     } catch (SQLException e) {
            System.out.println("Error:" + e);
     }

我认为字符串需要转换成DateTime格式,但我不知道怎么做。 请帮我解决这个问题


共 (1) 个答案

  1. # 1 楼答案

    由于数据库中的列是datetime数据类型,因此需要使用pstmt.setDate(1, Date);而不是pstmt.setString(1, Date);

    替代解决方案 您的列是datetime数据类型,所以您还需要存储时间 这样试试

    Date d=new Date();
    java.sql.Date  d1=new java.sql.Date(d.getTime());
    String sql = "INSERT INTO info (date) VALUES ( ? )";
    
    try {
          pstmt = con.prepareStatement(sql);
           pstmt.setDate(1, d1); 
          pstmt.executeUpdate();
         } catch (SQLException e) {
                System.out.println("Error:" + e);
         }