CREATE UNIQUE INDEX IF NOT EXISTS in postgreSQL

前端 未结 6 1438
天命终不由人
天命终不由人 2021-01-01 20:50

Plese I would like to do in PostgreSQL something like

CREATE UNIQUE INDEX IF NOT EXISTS

Any idea?

6条回答
  •  情话喂你
    2021-01-01 21:11

    Just another ready-to-use solution.

    PostgreSQL v9.0+:

    DO $BLOCK$
    BEGIN
        BEGIN
            CREATE INDEX index_name ON table_name( column_name );
        EXCEPTION
            WHEN duplicate_table
            THEN RAISE NOTICE 'index ''index_name '' on table_name already exists, skipping';
        END;
    END;
    $BLOCK$;
    

    PostgreSQL v9.5+:

    CREATE INDEX IF NOT EXISTS index_name ON table_name( column_name );
    

提交回复
热议问题