如果不是EXISTS错误

时间:2014-03-04 16:04:11

标签: postgresql

我必须在创建测试模式之前检查它是否存在。 但我的代码不起作用!!你有什么想法吗?

BEGIN 

IF NOT EXISTS(
    SELECT schema_name
      FROM information_schema.schemata
      WHERE schema_name = 'TEST'
  )
THEN
    CREATE SCHEMA "TEST";

END IF;

END

我的错误讯息: 错误:“IF”处或附近的语法错误 第3行:如果不存在(

1 个答案:

答案 0 :(得分:2)

CREATE SCHEMA IF NOT EXISTS test;

,或:

CREATE SCHEMA IF NOT EXISTS test AUTHORIZATION the_user;

(CREATE SCHEMA的NOT EXISTS条款是在postgres-9.x,IIRC的某处引入的)