СОЗДАТЬ ИЛИ ЗАМЕНИТЬ ВИД SQL Ошибка - PullRequest
7 голосов
/ 06 августа 2009

Попытка обновить табличное представление , используя:

CREATE OR REPLACE VIEW [vtable] AS SELECT * FROM Files_Table ORDER BY File

Таблица возвращает старое представление, а не обновленное.

Заявление протестировано в браузере базы данных Sqlite:

Error message from database engine: near "OR": syntax error

но не получил это в программе?

Есть идеи, почему он не обновляется?

Ответы [ 2 ]

19 голосов
/ 06 августа 2009

SQLite не поддерживает синтаксис CREATE OR REPLACE. Единственная известная мне база данных, которая поддерживает этот синтаксис, это Oracle, но я предполагаю, что есть и другие.

Отбросьте представление и создайте его с новым определением:

DROP VIEW IF EXISTS [vtable]; -- "OR REPLACE"
CREATE VIEW [vtable] AS SELECT * FROM Files_Table ORDER BY File;
0 голосов
/ 31 мая 2013

MySQL тоже поддерживает это. Больше информации здесь: http://dev.mysql.com/doc/refman/5.0/en/create-view.html (Хотел добавить это как комментарий к ответу выше, но не могу ...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...