SQL视图的问题是每次我需要做一个小的改变时,我需要创建另一个迁移。作为一个小型创业公司,如果不得不改变一些小事以改变观点,那么这是一个很大的障碍。管理postgresql视图而无需编写迁移?
是最好什么也别以下
- 删除并重新创建视图每次我部署我的应用程序;
- 这样,当我在视图中更改某些内容时,只要部署我的应用程序,它就会在数据库中更新。
SQL视图的问题是每次我需要做一个小的改变时,我需要创建另一个迁移。作为一个小型创业公司,如果不得不改变一些小事以改变观点,那么这是一个很大的障碍。管理postgresql视图而无需编写迁移?
是最好什么也别以下
您所描述的只是另一种在部署时反转的迁移类型。这可能对您的业务需求有意义,如果您受到这种技术的阻碍,您可以随时回到正常的迁移系统。
在PostgreSQL中实现这样一个系统的最好方法是创建一个放在部署上的模式。这样你就不必创建所有的DROP VIEW ...
命令,只需要DROP SCHEMA
,那里的所有内容都将被删除。然后你可以运行你的程序来重建它。
实例部署脚本上部署执行:
/* Drop and rebuild the schema */
DROP SCHEMA IF EXISTS view_schema;
CREATE VIEW view_schema.my_users AS (SELECT * FROM users);
CREATE VIEW view_schema.my_products AS (SELECT * FROM products);
....
当你任何你想要的,如果它不破的生产和舒适为你一个小的启动,你可以做。 – zerkms 2014-11-23 21:05:07
你在做什么迁移?你有什么改变?你在谈论postresql视图或视图层? – 2014-11-23 21:05:38
@Muden Uzelac:问题很明显。如果你无法得到它的内容 - 请自行研究。 – zerkms 2014-11-23 21:09:00