Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数据截断:日期时间值不正确:'';对于列';日期';在第一排_Java_Mysql_Swing - Fatal编程技术网

Java 数据截断:日期时间值不正确:'';对于列';日期';在第一排

Java 数据截断:日期时间值不正确:'';对于列';日期';在第一排,java,mysql,swing,Java,Mysql,Swing,我的应用程序出现以下错误: 数据截断:第1行“POrder_Date”列的日期时间值“2-24-2015”不正确 我有MySQL连接器java v-5.1.7 java.util.Date date = new java.util.Date(); DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT); String date1, mon, datex, year, yearx, currentDate; int d, d1;

我的应用程序出现以下错误:

数据截断:第1行“POrder_Date”列的日期时间值“2-24-2015”不正确

我有MySQL连接器java v-5.1.7

java.util.Date date = new java.util.Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
String date1, mon, datex, year, yearx, currentDate;
int d, d1;
以下代码位于我的类的构造函数中:

date1=df.format(date);
    d=date1.indexOf('/');
    mon=date1.substring(0,d);
    d1=date1.lastIndexOf('/');
    datex=date1.substring(d+1,d1);
    yearx=date1.substring(d1+1);
    year="20"+yearx;
    currentDate=mon+"-"+datex+"-"+year;
    System.out.println("current date  "+currentDate);
mysql默认日期格式为“yyyy-mm-dd”。更改日期格式后再存储。可能会起作用

java.util.Date date = new java.util.Date();
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
String  date1,mon,datex,year,yearx,currentDate;
int d,d1;
date1=df.format(date);
d=date1.indexOf('/');
mon=date1.substring(0,d);
d1=date1.lastIndexOf('/');
datex=date1.substring(d+1,d1);
yearx=date1.substring(d1+1);
year="20"+yearx;
currentDate=mon+"-"+datex+"-"+year;
System.out.println("current date  "+currentDate);
//change currentdate format MM-dd-yyyy into yyyy-MM-dd
try {
        SimpleDateFormat sdf = new SimpleDateFormat("MM-dd-yyyy");
        Date convertedCurrentDate = sdf.parse(currentDate);
        System.out.println(new SimpleDateFormat("yyyy-MM-  dd").format(convertedCurrentDate));
    } catch (ParseException ex) {
        Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
    }

检查打印日期格式,如(2015-05-25)。

这里有两种选择:

使用当前使用的
rs.updateString(2,podate)
。将
Date
对象传递给
updateDate()


或者在整个过程中更改内部日期格式,以符合ISO
yyyy-mm-dd
标准

欢迎来到堆栈溢出。请记住,我们是这里的志愿者,试图理解数百行代码非常耗时。你能不能编辑你的问题,只包含那些有问题的行?MySQL中的规范文本表示法恰好是
2015-02-24
,而不是
2-24-2015
。我试过了,但仍然得到同样的错误嘿,peter,它不起作用…顺便说一句,谢谢你的帮助