我有一个名为AUDIT的表,该表保存了对帐户所做的所有修改。字段AUDIT_DATE包含完成特定修改的日期。现在的问题是,在我的一位同事Oracle PL / SQL开发人员中,我可以在AUDIT_DATE列中看到时间以及日期,但是在我的Oracle PL / SQL开发人员中,我看不到时间部分。因此,我相信我的Oracle PL / SQL开发人员无法正确完成某些设置,这就是为什么我看不到时间的原因。我问了同事,但是他对这个差异一无所知。
如果您还想在显示日期和时间的同时不应用格式掩码to_char()
,则需要更改NLS_DATE_FORMAT
。假设您确实是Oracle SQL Developer,则可以从“工具”->“首选项”中执行此操作,在左侧面板中展开“数据库”部分,然后选择NLS:
目前NLS_DATE_FORMAT
设置为DD-MON-RR
,今天将显示为16-MAY-14
。为了显示完整的日期和时间,我可以将其设置为YYYY-MM-DD HH24:MI:SS
。您可能还想更改NLS_TIMESTAMP
格式。
PL / SQL Developer在“工具”->“首选项”下还有NLS选项:
如果您正在编写将由或可能由其他人执行的代码,请不要依赖使用这些参数的隐式格式。它们非常适合您自己封闭环境中的临时查询,但是当其他人(具有不同的NLS设置)运行它们时,它们可能会以有趣的方式中断。对于临时查询以外的任何内容,您都应该使用to_char(<column>, 'YYYY-MM-DD HH24:MI:SS')
或合适的模型来指定掩码。当然,这也意味着您可以为列获取正确的格式;如果您有仅代表时间的列,则设置会话的格式模型并依靠它表示您看到了所有00:00:00
时间,这通常只是杂音。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句