在PostgreSQL 中有條件地建立表格
在My 中,CREATE TABLE IF NOT EXISTS 語法允許您僅在不存在時建立語法表已經存在。這可以防止多次運行腳本時意外重新建立表。
PostgreSQL 9.1 及更高版本
PostgreSQL 9.1 引入了與 MySQL 相同的功能:
CREATE TABLE IF NOT EXISTS myschema.mytable (i integer);
對於舊版的PostgreSQL,您可以使用解決方法函數:
呼叫函數來建立表格:
CREATE OR REPLACE FUNCTION create_mytable() RETURNS void LANGUAGE plpgsql AS $func$ BEGIN IF EXISTS (SELECT FROM pg_catalog.pg_tables WHERE schemaname = 'myschema' AND tablename = 'mytable') THEN RAISE NOTICE 'Table myschema.mytable already exists.'; ELSE CREATE TABLE myschema.mytable (i integer); END IF; END $func$;
備註:
SELECT create_mytable();
pg_tables 表格區分大小寫。
以上是如何在 PostgreSQL 中建立尚不存在的表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!