你用的是Oracle的数据库吗?
这样写吧
strSQL="insert into student(birth) values (to_date('" + strBirth + "','yyyy-mm-dd'))";

解决方案 »

  1.   

    尝试使用以下的方式:
    private int deptno;
    private String dname;
    private String loc;... ...
    Connection conn;
    String sql;
    PreparedStatement pstmt;sql = "insert into dept(deptno, dname, loc) values(?, ?, ?)";
    pstmt = conn.prepareStatement(sql);
    pstmt.setInt(1, this.deptno);
    pstmt.setString(2, this.dname);
    pstmt.setString(3, this.loc);
      

  2.   

    to_date是oracle的内部函数.上面那为的用法是正确的.如果你是其他数据库,就别用了.
      

  3.   

    哦,原来是这样啊!
    我用的是access的数据库,
    那应该怎样把一个字符串变成yyyy-mm-dd格式的日期阿?
      

  4.   

    如 liad() 所说:用PreparedStatement。前提:你不想查阅Access的内置函数。