将数据插入 Informix 中的 TEXT 类型列

Posted

技术标签:

【中文标题】将数据插入 Informix 中的 TEXT 类型列【英文标题】:Inserting data into TEXT type column in Informix 【发布时间】:2013-08-02 18:24:50 【问题描述】:

如何通过 SQL 在 Informix 中将数据插入到类型为 TEXT 的列中。如果还有其他两列我也想插入/更新 - 是将其保存在文件中并加载它的唯一方法吗?

或者如果我想通过 SQL 语句来做 - 你能给出语法吗?

【问题讨论】:

您使用哪种语言?在 ESQL/C 中有一些方法可以做到这一点;我相信它也可以用 JDBC 来完成,可能还有 ODBC,而且......但你不能做的是使用一个简单的字符串来保存这个值。在 ESQL/C 中,您可以使用:EXEC SQL INSERT INTO SomeTable(Col1, Col2, Col3) VALUES(:host1, :host2, :host3);,但其中一个主变量需要是适合 TEXT 的类型,即 loc_t 或定位器结构。 【参考方案1】:

查看我的问题:Consistent method of inserting TEXT column to Informix database using JDBC and ODBC

使用 JDBC 和 PreparedStatement 很容易。 ODBC 的工作方式略有不同,但能够使用简单的 SQL INSERT 插入字符串(无需准备)。

【讨论】:

【参考方案2】:

加载命令有效,您也可以使用 ESQL/C 来执行此操作(在 this answer 中提到,您可能已经找到)。

关于在一个简单的插入中做到这一点,

您可以使用 VALUES 子句插入一个值,但您可以为该列提供的唯一值是 null。但是,您可以使用 INSERT 语句的 SELECT 形式从另一个表中复制 TEXT 或值。

您可以在此处查看Text data type 的文档。

【讨论】:

以上是关于将数据插入 Informix 中的 TEXT 类型列的主要内容,如果未能解决你的问题,请参考以下文章

在 Hibernate 中为 Informix 数据库中的列进行类型转换

如何在 informix 中插入 blob 或 clob 列

informix 锁表问题

Informix 脚本中的局部变量

Informix 数据库中的 Hibernate 批量插入(获取 sql 日志跟踪)

怎么向informix数据库表中一次插入多条记录