создать если не существует вид? - PullRequest
26 голосов
/ 23 июля 2010

Есть ли способ create view if not exists в базе данных MySQL или H2?

Ответы [ 2 ]

19 голосов
/ 23 июля 2010

Из раздела 12.1.12. CREATE VIEW Синтаксис Справочного руководства по MySQL 5.0:

CREATE VIEW Syntax

CREATE
    [OR REPLACE]
    [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
    [DEFINER = { user | CURRENT_USER }]
    [SQL SECURITY { DEFINER | INVOKER }]
    VIEW view_name [(column_list)]
    AS select_statement
    [WITH [CASCADED | LOCAL] CHECK OPTION]

Оператор CREATE VIEW создает новое представление или заменяет существующее представление, если задано предложение OR REPLACE. Это заявление было добавлено в MySQL 5.0.1. Если представление не существует, CREATE ORLES VIEW - то же самое, что CREATE VIEW. Если представление существует, то CREATE OR REPLACE VIEW совпадает с ALTER VIEW.

18 голосов
/ 23 июля 2010

Обычный способ - переписать представление, используя create or replace:

create or replace view YourView
as
select * from users
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...