Revision 12595
Added by Aaron Marcuse-Kubitza almost 11 years ago
trunk/schemas/util.sql | ||
---|---|---|
932 | 932 |
LANGUAGE plpgsql STRICT |
933 | 933 |
AS $$ |
934 | 934 |
BEGIN |
935 |
PERFORM util.eval(sql);
|
|
935 |
PERFORM util.eval(sql);
|
|
936 | 936 |
EXCEPTION |
937 |
WHEN duplicate_table THEN NULL; |
|
938 |
WHEN duplicate_object THEN NULL; -- e.g. constraint |
|
939 |
WHEN duplicate_column THEN NULL; |
|
940 |
WHEN invalid_table_definition THEN |
|
941 |
IF SQLERRM LIKE 'multiple primary keys for table % are not allowed' THEN NULL; |
|
942 |
ELSE RAISE; |
|
943 |
END IF; |
|
937 |
WHEN duplicate_table THEN NULL; |
|
938 |
WHEN duplicate_object THEN NULL; -- e.g. constraint |
|
939 |
WHEN duplicate_column THEN NULL; |
|
940 |
WHEN duplicate_function THEN NULL; |
|
941 |
WHEN invalid_table_definition THEN |
|
942 |
IF SQLERRM LIKE 'multiple primary keys for table % are not allowed' THEN NULL; |
|
943 |
ELSE RAISE; |
|
944 |
END IF; |
|
944 | 945 |
END; |
945 | 946 |
$$; |
946 | 947 |
|
Also available in: Unified diff
schemas/util.sql: create_if_not_exists(): also support `CREATE FUNCTION` (by handling duplicate_function exceptions)