将 SQL Server 字符串转换为日期时间以导入到 Oracle 中



我正在使用TOAD中的自动化设计器通过odbc连接将数据从SQL Server导入到Oracle表中。

其中一列是格式为yyyy-mm-dd hh24:mi:ss.mmmmm的字符串ssdatetimestr。我想使用导入向导中的表达式将其转换为 Oracle 日期。

我试过表达式

to_date(substr(ssdatetimestr,1,19),'yyyy-mm-dd hh24:mi:ss')

但这会引发错误

"to_date"不是有效的日期和时间

任何建议

我建议使用DATE/TIMESTAMP文字:

若要将 DATE 值指定为文本,必须使用公历。您可以指定 ANSI 文本,如以下示例所示:

DATE '1998-12-25'

TIMESTAMP 数据类型存储年、月、日、小时、分钟和秒以及秒的小数部分值。将 TIMESTAMP 指定为文本时,fractional_seconds_precision值可以是最多 9 的任意位数,如下所示:

TIMESTAMP '1997-01-31 09:26:50.124'

您给出的错误消息(如果您包含ORA-nnnn编号会更好(表明问题不在于to_date函数的构造(我认为它没有任何问题,顺便说一句(,而是如何在上下文中使用它。 但是你没有给我们背景...包含您的to_date的完整声明

最新更新