当我更新日期字段时,NetBeans的更新不起作用,并且引发了Below异常
Java.sql.sqlexception:将char数据类型转换为datetime数据类型导致datetime值超出范围
然而,我运行相同的查询-查询在SQL查询分析器(SQL Server 2000)中运行良好
我正在NetBeans中格式化要更新的日期值,如下所示。
JXDatePicker jDatePicker = (JXDatePicker) comp;
Date date = jDatePicker.getDate();
if (date != null) {
try {
String expectedPattern = "yyyy-MM-dd HH:mm:ss.SSS";
String currentFormat = "dd-MM-yyyy HH:mm:ss.SSS";
SimpleDateFormat dateFormatReq = new SimpleDateFormat(expectedPattern);
SimpleDateFormat dateFormatCurr = new SimpleDateFormat(currentFormat);
// To Convert Date To Required Format For DB
//First Prepare A String In Current Format dd-MM-yyyy
// Then Convert To The Date In The Current Format dd-MM-yyyy
// Then Convert Into String In The Desired Format yyyy-MM-dd
String strDate = dateFormatReq.format(dateFormatCurr.parse(dateFormatCurr.format(date)));
} catch (ParseException ex) {
Logger.getLogger(ChangeJControlProperties.class.getName()).log(Level.SEVERE, null, ex);
}
}
String query =update myTable
set date=strDate where id=myDd
对于日期2013-07-05,它成功更新
对于日期2013-06-28,它显示上述异常
问题已经解决,因为选择的默认语言是泰语,当我将其更改为英语时,异常不会出现,问题也会消失。