Informix "load" 命令在 Python pyodbc 中不起作用

Informix "load" command is not working in Python pyodbc

我们正在编写一个实用程序来将数据加载到 Informix DB 中。

我们的实用程序是用 Python 编写的,我们正在使用 pyodbc 包来连接和执行 SQL。

select 和插入查询工作正常。

但是,sql

"load from input_file delimiter '|' insert into table"

因以下错误而失败。

pyodbc.ProgrammingError: ('42000', '[42000] [Informix][Informix ODBC Driver][Informix]A syntax error has occurred. (-201) (SQLExecDirectW)') 

pyodbc 是否不支持 Informix 中的 "load" 命令?

提前感谢您的帮助。

谢谢,

不幸的是,'LOAD from ...'(和'UNLOAD TO ...')仅适用于 DBACCESS 和 ISQL。 None 的客户端 API (ODBC/JDBC/.NET) 支持这些命令。

J_S 一样,LOAD命令是由front-end工具实现的pseudo-SQL命令;它不是由数据库服务器实现的。

还有许多其他相关命令具有相同的属性:

  • LOAD
  • UNLOAD
  • OUTPUT
  • INFO

LOAD 的复杂因素之一是文件名由本地计算机上的客户端指定,但文件的内容可能必须通过网络传输到数据库服务器所在的位置.这不是一个无法克服的问题; BLOB 和 CLOB 文件可能会出现类似的问题,但已解决。

这些操作都是由 ISQL 和 DB-Access(以及我的 SQLCMD 等工具实现的——您可能需要注册才能下载它,但注册是免费的,电子邮件加载不是繁重)。

使用外部表加载数据怎么样? 插入目标 1 SELECT * 来自 ext1;

https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.sqls.doc/ids_sqs_2068.htm