使用数据类型为Date的列创建表会创建数据类型为Timestamp的列

时间:2018-09-21 08:49:52

标签: db2 db2-express-c

以下SQL查询:

CREATE TABLE "SomeTable" ("dateEnd" DATE) 

创建一个具有dateEnd列的表SomeTable。但是,数据库类型为时间戳,而不是日期。它曾经可以工作,但是在重新导入整个数据库转储之后,所有的Date数据类型都被Timestamp数据类型替换。即使我创建了一个非常简单的表(如上面的表),数据类型也会跳转到Timestamp。我正在使用DB2 Express C版本11.1.0。

1 个答案:

答案 0 :(得分:1)

如果您的Db2数据库是在Oracle兼容模式下创建的,则DATE列将被实现为TIMESTAMP(0)列以匹配Oracle的功能。

https://www.ibm.com/support/knowledgecenter/SSEPGG_11.1.0/com.ibm.db2.luw.apdv.porting.doc/doc/r0053667.html

https://www.ibm.com/support/knowledgecenter/SSEPGG_11.1.0/com.ibm.db2.luw.admin.config.doc/doc/r0054912.html

顺便说一句,您可能要使用Db2 Developer-C或Db2 Developer社区版。这些有效地替代了旧版Express-C版本

https://www.ibm.com/uk-en/marketplace/ibm-db2-direct-and-developer-editions