是否可以在连接字符串中创建触发器或参数,以便在传递限制时截断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)
答案 0 :(得分:1)
一种可能的解决方案是增加相关色谱柱的最大尺寸:
ALTER TABLE WEBPAGE ALTER COLUMN TEXT SET DATA TYPE VARCHAR(1000000)
触发器解决方案不能与HSQLDB一起使用,最高版本为2.2.9,但可能会在下一版本中使用。