ホームページ >データベース >mysql チュートリアル >「IF NOT EXISTS」を使用して PostgreSQL でテーブルを作成する方法?
PostgreSQL の「IF NOT EXISTS」句を使用してテーブルを作成する方法
MySQL では、ユーザーが「IF NOT EXISTS」句を使用してテーブルを作成できるようにします、テーブルがまだ存在しない場合にのみ作成されるようにします。これにより、スクリプトが複数回実行される場合のエラーが防止されます。
PostgreSQL では、この機能はバージョン 9.1 で導入され、以下の使用が可能になりました。
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$;
この関数は必要に応じて何度でも呼び出すことができますusing:
SELECT create_mytable();
注:
以上が「IF NOT EXISTS」を使用して PostgreSQL でテーブルを作成する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。