PostgreSQL에서 조건부로 테이블 생성
MySQL에서 CREATE TABLE IF NOT EXISTS 구문을 사용하면 테이블이 존재하지 않는 경우에만 테이블을 생성할 수 있습니다. 이미 존재하지 않습니다. 이렇게 하면 스크립트를 여러 번 실행할 때 실수로 테이블이 다시 생성되는 것을 방지할 수 있습니다.
PostgreSQL 9.1 이상
PostgreSQL 9.1에는 MySQL과 동일한 기능이 도입되었습니다.
CREATE TABLE IF NOT EXISTS myschema.mytable (i integer);
PostgreSQL 이전 9.1
이전 버전의 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();
참고:
위 내용은 테이블이 아직 존재하지 않는 경우에만 PostgreSQL에서 테이블을 생성하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!