当我尝试在有主键和外键的表中加载.tbl数据时,我收到Monetdb的这个错误,有什么问题? 这是命令:
COPY INTO monet.CUSTOMER FROM '/home/nicola/Scrivania/ssb-dbgen-master/1gb/customer.tbl' USING DELIMITERS '|', '|\n' LOCKED;
答案 0 :(得分:1)
批量加载到禁用(外部)键的表中总是好的。您可以在加载ALTER语句后添加它们。 见https://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/LoadingBulkData
答案 1 :(得分:0)
MonetDB的文档的另一部分说:"警告建议在加载文件后向表中添加完整性约束。 ALTER语句执行批量完整性检查,并且通常更有效地执行这些检查。" https://www.monetdb.org/Documentation/Manuals/SQLreference/CopyInto
通常,对于批量加载到现有表中,建议删除索引/外键/其他约束,加载表,然后重新创建索引/外键/其他约束。