0

谁能帮我?

我创建了具有 2 列的表,其中之一是 CLOB 数据类型。

CREATE TABLE "OFFTEST"."COMMENT_TEST" 
(   "CMNT" CLOB, 
    "ID_COM" NUMBER NOT NULL ENABLE)

这是我在 powerbuilder.net 中的语法,用于将插入数据保存到数据库中

dw_comments.Modify("DataWindow.Table.Insert='INSERT INTO COMMENT_TEST(CMNT, ID_COM) VALUES (:1, :2 )'")

但是为什么会出现这个错误,我只是在上面放了一些数据????

感谢您宝贵的时间: 在此处输入图像描述

4

1 回答 1

0

顶级问题是您尝试将 DataWindow 属性用于错误目的。“DataWindow.Table.Insert”本身不是属性,但“DataWindow.Table.Insert.*”属性是用来描述DataWindow的存储过程插入方法。INSERT SQL 命令语法由 DataWindow 自动生成(基于 DataWindow 中的各种更新属性),并且没有像这样显式声明。

但是,您有一个更基本的问题,因为 DataWindow 并非旨在像这样直接处理对大型二进制数据类型的更新。如果您的列保持在 32K 以下,人们就可以使用生成的 INSERT/UPDATE 语句更新大列,但是一旦超过 32K,就会遇到问题。有些 OLE 控件可能会进行更新(例如,富文本编辑样式),但它们是在与 DataWindow 的其余部分分开的事务下进行的。还有一些 PowerScript 命令,如 INSERT/UPDATEBLOB,可能会成为您解决方案的一部分。这取决于你在做什么,从你到目前为止告诉我们的内容中还不清楚。

祝你好运,

特里。

于 2013-06-14T13:54:54.253 回答