Postgres的java转储在HyperSQL中不起作用
我需要从Postgres服务器获取转储,并在内存HyperSQL服务器中运行它
例如,让我们考虑下面的查询来创建一个客户表:CREATE TABLE customer (
id integer DEFAULT nextval('public.customer_seq'::regclass) NOT NULL,
name character varying(255) DEFAULT NULL::character varying,
contact character varying(255) DEFAULT NULL::character varying,
address character varying(255) DEFAULT NULL::character varying);
上面的查询是从pg_dump生成的,但是当我在HyperSQL上运行相同的查询时,它无法识别从::
开始的东西,在本例中是::character varying
和::regclass
在pg_dump
或Postgres手册中找不到任何有用的内容来从转储中排除这些内容
目前,我正在用Java编程方式将这些东西替换为其他不需要的东西。有没有更好的办法
注意:我已经在使用SET DATABASE SQL SYNTAX PGS TRUE;
,但在这种情况下没有帮助
# 1 楼答案
默认情况下,NULL是默认值。通过执行以下操作,可以更改表以摆脱显式(显然毫无意义)默认子句:
等等,我有点惊讶pg_dump没有为你扔下它