在mysql中使用If exists for select语句

时间:2011-03-30 08:42:50

标签: mysql

我正在创建一个视图并编写以下代码片段:

CREATE OR REPLACE VIEW vclPersonData
    AS
SELECT * FROM phone_data UNION 
SELECT * FROM Address 

如果表格不存在,我会收到错误,如果存在,我会使用If Ifists但它也不适用于我。

感谢任何帮助。 在此先感谢。

1 个答案:

答案 0 :(得分:2)

您的脚本需要两个步骤:

  1. CREATE TABLE IF NOT EXISTS
  2. CREATE VIEW AS SELECT * FROM TABLE
  3. 如果表存在,步骤1将是无害的。如果表不存在,则步骤1将创建它,步骤2将创建一个空视图。

    如果您只想在表格存在的情况下创建视图,请在检查表格的存在之前:

    BEGIN
    SELECT 1 FROM TABLE;
    CREATE VIEW AS SELECT * FROM TABLE
    COMMIT