我正在使用SYSCS_IMPORT_DATA
. 我的表有一个我想保留的标识列,因为它在其他表中被引用。
我不断收到错误:
尝试修改标识列
使用以下调用
CALL SYSCS_UTIL.SYSCS_IMPORT_DATA (NULL,'TABLE',NULL,NULL,'DATA.DEL',NULL,NULL,NULL,0);
好吧,我找到了我的答案。问题是表,只是将 GENERATED ALWAYS 更改为 GENERATED BY DEFAULT。
您可以在表格中保留“始终生成”。解决方案是您必须在调用中指定要在表中导入的那些列,不包括那些作为标识列的列。
例子:
CALL SYSCS_UTIL.SYSCS_IMPORT_DATA (null, 'STAFF', 'NAME,DEPT,SALARY,PICTURE', '2,3,4,6', 'c:\data\staff.del', ',','"', 'UTF-8', 0);
调用的第三个参数是列名,第四个参数是它们在表中的顺序。
此链接的更多信息:
http://db.apache.org/derby/docs/10.6/tools/ctoolsimportidentitycol.html
希望这对未来有所帮助,马科斯。