PostgreSQL: 导出时将枚举默认值未引号化并将数组默认值作为字符串文本输出,无法导入
作者: Melvinvmegen创建于 2026年9月19日更新于 2026年9月19日
重现步骤
CREATE TYPE "Status" AS ENUM ('DRAFT', 'PAID'); CREATE TYPE "Kind" AS ENUM ('PRIMARY', 'SECONDARY'); CREATE TYPE "Role" AS ENUM ('USER', 'ADMIN');
CREATE TABLE t ( id serial PRIMARY KEY, status "Status" DEFAULT 'DRAFT' NOT NULL, kind "Kind" DEFAULT 'PRIMARY' NOT NULL, role "Role" DEFAULT 'USER' NOT NULL, tags text[] DEFAULT ARRAY[]::text[] );
导出表(输出: SQL, 表: DROP+CREATE),然后使用 psql -f 将文件导入到一个空数据库中。
内容来源: vrana/adminer