有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案

  1. # 1 楼答案

    默认情况下,NULL是默认值。通过执行以下操作,可以更改表以摆脱显式(显然毫无意义)默认子句:

    alter table customer alter name drop default;
    

    等等,我有点惊讶pg_dump没有为你扔下它