oracle - oracle Alter Session NLS FORMAT for bulk insert statements - 行为不符合预期
问题描述
我已经以插入语句的格式从 SQL DB 中导出了表信息。许多表包含 YYYY-MM-DD HH24:MI:SS 格式的时间戳信息。由于有数百个这样的语句,因此在每个日期中添加 TO_DATE() 语句对我来说是不现实的。我认为更改会话 NLS DATE 格式可以解决此问题,但是我仍然收到有关ORA-01843: not a valid month
.
列数据类型是TIMESTAMP
.
例子:
ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS'
INSERT INTO gcGovernance (id, userID, grantAppID, grantAppUUID,
grantCommCatID, grantApprovalCmnt, grantApprovalDate) VALUES (758, 163,
408, 'iahfahfahashvai', 0, '', '2016-12-20
14:32:17');
解决方案
如果接收列是 TIMESTAMP,那么您需要设置NLS_TIMESTAMP_FORMAT
,而不是NLS_DATE_FORMAT
。
推荐阅读
- amazon-web-services - 我需要使用 MemeCache 进行身份验证吗?
- python - 在运行时更改 django 模型的表名
- c - 指向类型定义结构的指针
- reactjs - 酶单元测试返回
在组件上运行测试时 - c# - 使用从 swagger 发送的流畅验证请求验证嵌套属性
- bash - 仅当文件与模式不匹配时,如何重命名文件?
- python - 两个未链接的列表,在一个中查找项目的位置并从另一个打印位置
- html - fab fa-whatsapp 出现在移动设备中,但我无法点击它
- codeigniter - 使用 curl 和 Codeigniter 3 获取标题字段
- python - Google Document Ai 为同一文件提供不同的输出