如何使用 SQLPlus 导入 Oracle SQL 开发人员导出日期

How to import Oracle SQL Developer export dates using SQLPlus

我在 Oracle SQL Developer v17.2 中使用工具 > 数据库导出...导出数据。这给了我带有 sql 语句的 .sql 文件。

然后我尝试使用 SQLPlus v12.2 导入它。 Oracle SQL 开发人员为我生成插入语句,其中时间格式如下:to_timestamp('06.10.2021 12:30:22,593000000','DD.MM.RRRR HH24:MI:SSXFF')。当我 运行 使用 Oracle SQL Developer 时,这些 运行 很好。但是当我使用 SQLPlus 时出现错误:

ORA-01830: date format picture ends before converting entire input string

有没有办法进行与 SQLPlus 一起使用的导出?

我知道 Oracle SQL Developer 中有 DBA 视图,但它说我没有 DBA 权限,因此我希望使用我拥有的选项。

您的 SQL Developer 和 SQL*Plus 会话设置不同;可能不同的语言环境,但这里的相关部分是每个环境中的 NLS_NUMERIC_CHARACTERS 设置,通常从领土继承。

您的 to_date() 格式模型使用 X 作为 'local radix character'。在 SQL Developer 即逗号;在 SQL*加上它似乎是句点。

如果您不想修改语句,您可以更改 SQL*Plus 会话以匹配:

alter session set NLS_NUMERIC_CHARACTERS = ',.'

db<>fiddle 显示问题并修复。