oracle - 如何在 ORACLE 中对 DATE FORMAT 进行约束
问题描述
说我通常的日期格式是“14-jan-2019”,我希望我的日期只被接受为“YYYY-MM-DD”,我该怎么做?我可以将 jan 更改为实际数字吗?
解决方案
DATE
数据类型没有格式 - 它在内部存储为7个字节,代表年(2 个字节)和月、日、小时、分钟和秒(每个 1 个字节)。
'14-JAN-2019'
不是日期 - 它是文本文字。
如果要存储日期值,请使用DATE
数据类型。
如果您只想接受特定格式的字符串作为输入,那么在您用来与数据库对话的任何用户界面中,都只接受该格式。如果您要将字符串转换为DATE
s 并想要一个精确的格式,那么您可以使用:
TO_DATE( '2019-01-14', 'fxYYYY-MM-DD' )
注意:fx
格式模型将意味着预期的确切格式,并且不会应用典型的字符串到日期转换规则。
推荐阅读
- c# - WebApplicationFactory 在另一个项目目录中使用 Startup.Cs
- html - 更改按钮高度时如何使文本始终保持水平居中
- c# - 跟踪静态字典中的任务并等待在单独的请求线程中启动的任务是安全的吗?
- c++ - WSL 中的 g++ 创建了一个不可删除的文件
- angular - 如何使用构造函数将 Asp.Net Core DateTime 转换为 Angular Date?
- jenkins - Post-build Actions 部分看不到注入的环境变量
- javascript - JavaScript“String.fromCharCode”返回的字符集与 Python 的“chr”函数不同
- java - 拿起_JAVA_OPTIONS:_Xmx2048M无法识别的选项:_Xmx2048M Minecraft服务器
- java - 同步块有一个逻辑
- java - 使用线程按顺序显示字符串后应用程序崩溃