You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用SQL*Loader向Oracle加载数据时指定固定日期报错求助

解决SQL*Loader加载时指定固定DATE字段的错误问题

问题原因

你的控制文件中直接给CREATED_TIME字段赋值字符串'2022-08-05',但Oracle的DATE类型需要符合会话默认日期格式的字符串,若默认格式不是YYYY-MM-DD,就会触发格式不匹配的错误。

解决方案

修改控制文件中CREATED_TIME的定义,使用TO_DATE函数显式指定日期格式,确保字符串能正确转换为DATE类型:

LOAD DATA
--TRUNCATE
APPEND
INTO TABLE mcm.TEMP_2
FIELDS TERMINATED BY '|'
TRAILING NULLCOLS
(
EMAIL_ADDRESS_  NULLIF EMAIL_ADDRESS_ = BLANKS,
EMAIL_PERMISSION_STATUS_  NULLIF EMAIL_PERMISSION_STATUS_ = BLANKS,
CREATED_TIME   "TO_DATE('2022-08-05', 'YYYY-MM-DD')"
)

说明

  • 用双引号包裹TO_DATE函数是SQL*Loader的语法要求,确保函数被Oracle正确解析执行。
  • 显式指定日期格式YYYY-MM-DD,避免依赖会话默认格式导致的兼容性问题。
  • 由于CREATED_TIME是固定值,无需从数据文件读取字段,这样的写法完全符合需求。

内容的提问来源于stack exchange,提问作者Abdullah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 21:18:19