我有一个名为
prop_info
的表格,其中包含对desp
的外键引用。我正在尝试导入包含这些信息的csv文件。prop_code,prop_name,price
ABC,,1.2,
ABB,Apple,5.0,
CREATE TABLE prop_info (
prop_code CHAR (3) PRIMARY KEY NOT NULL,
prop_name VARCHAR (100) REFERENCES desp (product_name) ON UPDATE CASCADE,
price float NOT NULL
);
CREATE TABLE desp
(
product_name VARCHAR (100) PRIMARY KEY NOT NULL,
product_desp VARCHAR (100)
);
我试图使用DBeaver上传CSV文件时,遇到了以下错误:
ERROR: insert or update on table "prop_info" violates foreign key constraint "prop_info_prop_name_fkey"
Detail: Key (prop_name)=() is not present in table "desp".
根据PostgreSQL的规定,我有未引用的空字符串。
指定表示null值的字符串。默认情况下,在文本格式中为\N(反斜杠-N),在CSV格式中为空字符串而不加引号。在某些情况下,您可能更喜欢即使在文本格式中也是一个空字符串,以便您不必区分null和空字符串。使用二进制格式时,不允许使用此选项。
这是我的DBeaver出了问题吗?需要帮助。
copy
语句。 - user330315COPY
命令。你需要在DBeaver中检查选项,看看是否可以将空字符串视为NULL
。 - user330315