首页 > 解决方案 > 如何在 ORACLE 中对 DATE FORMAT 进行约束

问题描述

说我通常的日期格式是“14-jan-2019”,我希望我的日期只被接受为“YYYY-MM-DD”,我该怎么做?我可以将 jan 更改为实际数字吗?

标签: oracledate

解决方案


DATE数据类型没有格式 - 它在内部存储为7个字节,代表年(2 个字节)和月、日、小时、分钟和秒(每个 1 个字节)。

'14-JAN-2019'不是日期 - 它是文本文字。

如果要存储日期值,请使用DATE数据类型。

如果您只想接受特定格式的字符串作为输入,那么在您用来与数据库对话的任何用户界面中,都只接受该格式。如果您要将字符串转换为DATEs 并想要一个精确的格式,那么您可以使用:

TO_DATE( '2019-01-14', 'fxYYYY-MM-DD' )

注意:fx格式模型将意味着预期的确切格式,并且不会应用典型的字符串到日期转换规则。


推荐阅读