Я использую Postgres Version 9.1, и у меня возникли проблемы с просмотром прошлого VIEWS
, который я создал.Как сохранить сценарий CREATE VIEW в postgres, а не VIEW DEFINITION
Как только я создаю VIEW
, Postgres перебирает текст CREATE VIEW
, поэтому он очень нечитабелен.
Например, я мог бы создать простой VIEW
как:
create view some_view as
select *
from some_table
where some_column = 'some_value';
Это тогда превращается во что-то путь более сложный, как:
select [all columns...]
from some_table
where (((some_column = 'some_value')));
Теперь, это простой пример - однако, когда вам перейдите в несколько статей JOINS
и WHERE
или SUBQUERIES
становится почти невозможно прочитать, чтобы отредактировать VIEW
на более позднюю дату.
(Точное местоположение по VIEWS
хранятся в information_schema.pg_views
, если кто-нибудь захочет посмотреть.)
По этой причине я сохранить CREATE VIEW
сценарии в виде отдельного .sql
файла, однако это может получить налогообложение и, очевидно, имеет ответственность за несинхронизацию с текущим VIEW
в базе данных Postgres (если вы обновите VIEW
, но не обновляете файл .sql
).
Было бы намного проще, если бы был сохранен простой текст CREATE VIEW
.
Когда я создаю FUNCTION
, он сохраняет сценарий целиком, как это со всеми бело-пространстве и т.д.
Это делает его очень просто, на более поздний срок, чтобы рассмотреть его и посмотреть, если это необходимо исправлены или обнаружены возможные ошибки.
Так что мой вопрос в том, есть ли какое-то место в базе данных Postgres, где фактический текст сохраняется из инструкции CREATE VIEW
для последующего просмотра/редактирования.
спасибо.
Вы находитесь на правильном пути, чтобы сделать это в сценариях SQL. Просто никогда не изменяйте базу данных вручную, всегда развертывайте изменения через свои сценарии (которые, конечно же, должны храниться в системе управления версиями, такой как Git или Subversion). Такие инструменты, как Liquibase, помогают вам со всем этим –
Благодаря @a_horse_with_no_name, я недавно реализовал систему управления версиями с Git, и это работает, и если это правильный путь, то пусть будет так. Оценил. –