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