我们不能使用getString()从mysql数据库中获取日期字段类型吗

我们不能使用getString()从mysql数据库中获取日期字段类型吗,mysql,jdbc,Mysql,Jdbc,在mysql数据库中,我有一个名为date of date类型的字段。 当我试图使用java的getString检索date字段中的值时 我得到一个例外,因此: java.sql.SQLException:值“0000-00-00”不能表示为java.sql.Date 我们是否不能使用getString获取日期类型值?或者名称日期与日期字段类型冲突?还是别的什么问题 描述作者 我只是好奇,仅此而已。作为一种解决方案,我尝试使用date_FORMATdate、“%d%m%Y”作为dt来转换日期,它

在mysql数据库中,我有一个名为date of date类型的字段。 当我试图使用java的getString检索date字段中的值时 我得到一个例外,因此:

java.sql.SQLException:值“0000-00-00”不能表示为java.sql.Date

我们是否不能使用getString获取日期类型值?或者名称日期与日期字段类型冲突?还是别的什么问题

描述作者


我只是好奇,仅此而已。作为一种解决方案,我尝试使用date_FORMATdate、“%d%m%Y”作为dt来转换日期,它成功了。

在java中,当您尝试从结果集获取日期时,需要使用getDate而不是getString


getString能够处理此日期\u FORMATdate,'%d%m%Y',因为它现在是字符串格式。

当然,您应该使用getDate;使用getInt获取整数是的,我们可以使用getInt获取整数,但是getString也可以正常工作,没有异常。但为什么不在日期的情况下呢?尽管如此,我知道对整数和日期使用getString并不是一个好方法。我只是好奇,仅此而已。问题很可能出在MySQL JDBC驱动程序和专栏内容上。我怀疑它实际上不是空的,而是0000-00-00,这是MySQL有时用来代替空的。但我们有一个代码段如下的旧程序:rs.*getStringarticle\u date**from sql语句:从my\u主题中选择article\u date,其中。。。其中,article_date是Oracle 8i上表中的日期类型。为什么它不会引起任何异常?可能是因为使用了第三方Oracle JDBC驱动程序?
Field   Type    Null    Default

date    date    YES     NULL