HSQLDB自动截断

时间:2012-08-14 11:20:35

标签: sql hsqldb

是否可以在连接字符串中创建触发器或参数,以便在传递限制时截断varchar?

我试图在插入/更新之前创建一个触发器,但我继续得到以下异常:

java.io.IOException:java.sql.BatchUpdateException:数据异常:字符串数据,右截断     在org.apache.gora.sql.store.SqlStore.flush(SqlStore.java:340)     在org.apache.gora.sql.store.SqlStore.close(SqlStore.java:185)

gora是因为我正在使用nutch。

由于

EDIT1:

触发器是:     CREATE TRIGGER typeconversionUpdate在WEBPAGE上更新之前     引用新的ASrow     对于每行设置newrow.TEXT =''

创建声明:

CREATE TABLE WEBPAGE (id VARCHAR(512) PRIMARY KEY,headers BLOB,text VARCHAR(32000),status INTEGER,markers BLOB,parseStatus BLOB,modifiedTime BIGINT,score FLOAT,typ VARCHAR(32),baseUrl VARCHAR(512),content BLOB(65536),title VARCHAR(512),reprUrl VARCHAR(512),fetchInterval INTEGER,prevFetchTime BIGINT,inlinks BLOB,prevSignature BLOB,outlinks BLOB,fetchTime BIGINT,retriesSinceFetch INTEGER,protocolStatus BLOB,signature BLOB,metadata BLOB)

1 个答案:

答案 0 :(得分:1)

一种可能的解决方案是增加相关色谱柱的最大尺寸:

ALTER TABLE WEBPAGE ALTER COLUMN TEXT SET DATA TYPE VARCHAR(1000000)

触发器解决方案不能与HSQLDB一起使用,最高版本为2.2.9,但可能会在下一版本中使用。