Object a[][] = new Object[1][9];
在oracle中定义Odate date.
在图形界面的a[0][0]处填写日期.想在Order1表中更新Onumber=num的数据中的日期.con = DriverManager.getConnection("jdbc:odbc:helloo", "system", "lihuifeng");
sql.executeUpdate("UPDATE Order1 SET Odate='" + a[0][0] + "' WHERE Onumber='" + num + "'");这时会提示ORA-01861:文字与格式字符串不匹配。请问解决办法是什么呢?

解决方案 »

  1.   

    a[0][0] 是个什么东西呀
    必须将a[0][0] 转换为字符串才行
    然后 SET Odate='to_date('" +  转换后的字符串+"','yyyy-mm-dd')"
      

  2.   

    那样改后会提示SQL命令未正确结束
      

  3.   

    那样改后会提示SQL命令未正确结束
      

  4.   

    sql.executeUpdate("UPDATE Order1 SET Odate='to_date('"
    + a[0][0] + "','yyyy-mm-dd')',Ocnumber='" + a[0][1]
    + "',Otrafficneed='" + a[0][2] + "',Oflag='" + a[0][3]
    + "',Osnumber='" + a[0][4]
    + "',Otrafficdate='to_date('" + a[0][5]
    + "','yyyy-mm-dd')',Oweight='" + a[0][6]
    + "',Otrafficcharge='" + a[0][7] + "',Opaymoney='"
    + a[0][8] + "' WHERE Onumber='" + num + "'");