官术网_书友最值得收藏!

Version control system

It is a good idea to maintain your code using a revision control system such as Git or SVN. When writing an SQL code, it is better to create an installation script and execute it in one transaction. This approach makes it easy to clean up if an error occurs.

Database objects have different properties: some are a part of the physical schema, and some control database access. The following is a proposal for organizing the database code in order to increase the separation of concern (SoC).

For each database in a PostgreSQL cluster, one should maintain the DDL script for objects that are part of the physical schema, and the DML script, which populates the tables with static data together. The state of an object in the physical schema is defined by the object structure and the data that is contained by this object; thus, the object cannot be recreated without being dropped first. Also, the structure of the physical schema object does not change often. In addition to that, the refactoring of some of the physical schema objects, such as tables, might require data migration. In other words, changing the definition of a physical schema object requires some planning.

Store the DDL scripts for objects that are not part of the physical schema, such as views and functions, separately. Keeping the definitions of views and functions together allows the developer to refactor them easily. Also, the developer will be able to extract the dependency trees between these objects.

Maintain the DCL script separately. This allows the developer to separate the security aspect from the functional requirements of the database. It allows the database developers and administrators to work closely without interfering with each other's work.

主站蜘蛛池模板: 长宁县| 新宁县| 左权县| 灵丘县| 六枝特区| 湘潭县| 临武县| 建水县| 丰原市| 宜兰市| 阿鲁科尔沁旗| 清远市| 郓城县| 渝北区| 湘乡市| 凌海市| 集贤县| 六安市| 怀仁县| 贵定县| 光泽县| 太谷县| 三台县| 宿迁市| SHOW| 玉溪市| 沂南县| 织金县| 潜山县| 陈巴尔虎旗| 锡林浩特市| 台北县| 谢通门县| 阆中市| 曲周县| 麻城市| 深水埗区| 浦城县| 同德县| 武川县| 赣州市|