数据类型不一致: 应为 DATE, 但却获得 NUMBER

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据类型不一致: 应为 DATE, 但却获得 NUMBER相关的知识,希望对你有一定的参考价值。

参考技术A 需要加引号,或者里面的日期可以用系统函数产生追问

单引号么。。。可是加了没用啊。。

追答

你用的什么数据库,int类型前面不加0, 加0表示二进制,字符串比较通用的就是nvarchar了

Java代码中Date类型插入到mysql数据库中数值不一致

  网上好多解决方法说:连接数据库时,将serverTimezone值改为CTT(url: jdbc:mysql://127.0.0.1:3306/xxx?serverTimezone=CTT)

  解决了相差8小时的问题,但是不知道为啥差1个月。

 

 1.问题。

输入:

 

msql:

2.测试:


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatTest {

public static void main(String args[ ]){
SimpleDateFormat dataformatter = new SimpleDateFormat( "yyyy-MM-dd");
String d1="2020-04-27";
String d2="2020-05-27";
String d3="2020-06-27";

try {

Date date1 =dataformatter.parse(d1);
Date date2 =dataformatter.parse(d2);
Date date3 =dataformatter.parse(d3);

System.out.println("date1:"+date1);
System.out.println("date2:"+date2);
System.out.println("date3:"+date3);

} catch (ParseException e) {
e.printStackTrace();
}


}
}
 

输出结果:

 发现都是1月。。。。。。。。。。

最后发现:yyyy-mm-dd的M应该大写。(将yyyy-mm-dd改为yyyy-MM-dd后正确)

 

以上是关于数据类型不一致: 应为 DATE, 但却获得 NUMBER的主要内容,如果未能解决你的问题,请参考以下文章

java.sql.SQLException: ORA-00932: 数据类型不一致: 应为 -, 但却获得 BLOB

ORA-00932: inconsistent datatypes: expected - got NCLOBORA-00932: 数据类型不一致: 应为 -, 但却获得 NCLOB 解决办法

ORA-00932: inconsistent datatypes: expected - got NCLOBORA-00932: 数据类型不一致: 应为 -, 但却获得 NCLOB 解决办法

EXP-00056: 遇到 ORACLE 错误 932 ORA-00932: 数据类型不一致: 应为 BLOB, 但却获得 CHAR 导出失败

oracle数据类型不一致,应为 ‘-’ 却获得‘-’

在plsql里执行查询语句提示:数据类型不一致 应为date 却获得了number