Informix的7.3 ISQL INSERT语句 - 文本/ BLOB / CLOB字段插入错误

2019-06-24 18:40发布

围绕这样的方式?

我试图插入一些数据表,其结构为:

Column name          Type                                    Nulls

crs_no               char(12)                                no
cat                  char(4)                                 no
pr_cat               char(1)                                 yes
pr_sch               char(1)                                 yes
abstr                text                                    yes

该类型的最后一个字段的读“文”,而是试图插入此表时,我得到这个错误:

insert into crsabstr_rec values ("COMS110","UG09","Y","Y","CHEESE");

  617: A blob data type must be supplied within this context.
Error in line 1
Near character position 66

所以这个领域是某种斑点明显,但不会采取插入(或更新)。 通常情况下,这些记录被插入到GUI形式,则C代码处理插入。

Answer 1:

有没有斑点(BYTE或TEXT)文本Informix Dynamic Server中(IDS) - 也不在IDS 9.00后来CLOB或BLOB类型。 这是一个持续不断的挫折给我的来源; 我已经多年在系统功能要求,但它从来没有达到内部的痛阈值,这意味着它被固定 - 其他事情被赋予了更高的优先级。

然而,它咬的人所有的时间。

在IDS 7.3(你的目标应该是升级 - 它熄灭了服务于2009年9月经过了十年左右),你几乎坚持用C的数据进入数据库的文本字段。 你必须使用经批准的C类“loc_t”来存储有关BYTE或TEXT数据的信息,并传递给服务器。

如果您需要在ESQL / C的例子,看看国际Informix的用户组的网站,特别是软件库 。 除其他事项外,你会发现原来SQLCMD程序(微软的同名程序是约翰尼新来的)以源代码形式。 它还包括一组我配音“护身符”方案; 他们操纵以各种方式斑点,并旨在展示如何使用“loc_t”结构在各种情况下。



Answer 2:

在iSQL ....

Load from desc.txt insert into crsabstr_rec;

3行(多个)加载。

desc.txt是一个| (管)分隔的文本文件和TXT字段的数量必须匹配表中的字段的数量



文章来源: Informix 7.3 isql insert statement - text/blob/clob field insert error