0

我试图使用 ctl 文件从 oracle 数据库表中导入数据。不幸的是,由于语法错误,它不起作用,而且我不明白为什么。

SQL 代码:

sqlldr USERID=user/password, CONTROL=C:\wkt_building001.ctl, LOG=C:\ulcase1.log 

文件ctl代码:

OPTIONS (readsize=20000000, DIRECT=TRUE)
UNRECOVERABLE LOAD DATA
CHARACTERSET UTF8

INFILE 'C:/wkt_building.txt.001'
APPEND
PRESERVE BLANKS
INTO TABLE wkt_building
FIELDS TERMINATED BY '  ' TRAILING NULLCOLS
(
BUILDING_ID,
BUILDING CHAR(100000)
)

错误:

org.jkiss.dbeaver.model.sql.DBSQLException: Errore SQL [900] [42000]: ORA-00900: istruzione SQL non valida

at...
    
Caused by: java.sql.SQLSyntaxErrorException: ORA-00900: istruzione SQL non valida


    at ...

Caused by: Error : 900, Position : 0, Sql = sqlldr USERID=user/password, CONTROL=C:\wkt_building001.ctl, LOG=C:\ulcase1.log data=C:\wkt_building.txt.001, OriginalSql = sqlldr USERID=user/password, CONTROL=C:\wkt_building001.ctl, LOG=C:\ulcase1.log data=C:\wkt_building.txt.001, Error Msg = ORA-00900: istruzione SQL non valida


    at ...

先感谢您

4

1 回答 1

0

在错误的初始命令中,缺少 IP 地址、端口和数据库名称,这是正确的版本:

  • sqlldr USERID=user/password@10.0.0.116:1521/name_database CONTROL=wkt_face001.ctl LOG=ulcase1.log

此外,要在 cmd 上配置连接,请遵循使用 net menager 的本指南,应具有所有步骤:

于 2020-12-15T15:06:49.437 回答