On 2024-04-02 22:08 +0200, sud wrote:
> On Tue, Apr 2, 2024 at 7:46 PM Greg Sabino Mullane <htamfids@gmail.com>
> wrote:
>
> Now this block seems to be failing near the "LIKE" operator. Isn't it
> allowed to add the check constraints along with the CREATE TABLE statement?
>
> [...]
>
> EXECUTE format('
> CREATE TABLE parent_table_%s (
> CHECK (partition_key >= ''%s'' AND partition_key < ''%s'' )
> * ) LIKE (parent_table including all);',*
> TO_CHAR(start_date + make_interval(days=>i),'YYYY_MM_DD'),
> (start_date + make_interval(days=>i))::timestamptz ,
> (start_date + make_interval(days=>i))::timestamptz
> );
>
> [...]
>
> *SQL Error [42601]: ERROR: syntax error at or near "LIKE"Where: PL/pgSQL
> function inline_code_block line 8 at EXECUTE*
> *Error position: *
The LIKE clause goes inside the parenthesis along with the column and
constraint definitions, i.e.:
CREATE TABLE parent_table_yyyy_mm_dd (
LIKE parent_table,
CHECK (...)
);
--
Erik