create if not exists view? create if not exists view? sql sql

create if not exists view?


From section 12.1.12. CREATE VIEW Syntax of the MySQL 5.0 Reference Manual:

CREATE VIEW SyntaxCREATE    [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]

The CREATE VIEW statement creates a new view, or replaces an existing one if the OR REPLACE clause is given. This statement was added in MySQL 5.0.1. If the view does not exist, CREATE OR REPLACE VIEW is the same as CREATE VIEW. If the view does exist, CREATE OR REPLACE VIEW is the same as ALTER VIEW.


The usual way is to overwrite a view using create or replace:

create or replace view YourViewasselect * from users


On H2 you can add IF NOT EXISTS before the view name you want to create.e.g.:

CREATE VIEW IF NOT EXISTS viewExampleName (column1, column2) AS (     SELECT column1, column2    FROM example_table );