Postgresql - 使用LIKE创建表语法错误 -

jza*_*lla 28 postgresql

我正在尝试从父表创建临时表:

这是我用pgAdmin III(或Java中的JDBC)执行的代码:

CREATE TEMP TABLE table1_tmp LIKE table1 INCLUDING DEFAULTS;
Run Code Online (Sandbox Code Playgroud)

我收到的错误是:

[WARNING  ] CREATE TEMP TABLE table1_tmp LIKE table1 INCLUDING DEFAULTS
        ERROR:  syntax error at or near «LIKE»
        LÍNEA 1: CREATE TEMP TABLE table1_tmp LIKE table1 INCLUDING DEFAULTS
                                              ^
Run Code Online (Sandbox Code Playgroud)

阅读postgresql 8.4文档,使用这个创建表,它很容易,但我不明白语法问题在哪里.

Hei*_*upp 54

你需要把这样的东西放进像parens一样

CREATE TEMP TABLE table1_tmp ( LIKE table1 INCLUDING DEFAULTS ) ;
Run Code Online (Sandbox Code Playgroud)

如果你不计算1:1的数据,这在文档中并不明显


flu*_*nis 24

我不是Postgresql用户,但手册说有类似的句子周围有().

CREATE TEMP TABLE table1_tmp (LIKE table1 INCLUDING DEFAULTS);
Run Code Online (Sandbox Code Playgroud)