如何保证开发过程中对数据库结构的更新顺利地迁移到产品服务器上。

应用程序升级常常包含着数据库的升级,数据库的升级通常会包含表结构的变化(表添加字段或者删除字段),视图的更新,存储过程的更新以及字典表数据的更新。而这些更新需要有时间顺序,即在执行更新脚本的时候,必须先执行更新表结构的脚本,然后才可以正确的执行修改视图和存储过程的脚本,所以我们要求在开发的过程中设计到数据库的变化时留下sql脚本,并遵守以下脚本的名称格式的规定命名变化脚本。

 

yyyymmddhhMM-yourname-{alter|drop|update|insert|delete}_{tablename|proc|viewname}_{entityname}.sql

 

说明:

第一段为日期段包括四位年份数字两位月份数字两位日期数字两位小时数字两位分钟数字,例如:200403071043

第二段为更新人的名字,如:yukaizhao

第三段包括操作和操作对象类型,操作对象名字,如:alter_table_UserAccount,alter_proc_login

完整的例子:200403071043- yukaizhao- alter_table_UserAccount.sql

 

在开发时,要严格安装以上规定记录数据库修改脚本,在发布新版本时,需要将所有脚本按照时间的先后顺序合并到一个脚本中(合并脚本的名字格式为:yyyymmddhhmm.sql包含截至到更新时的最新日期时间,可以做一个程序合并脚本),然后在测试服务器上面建立上一个版本数据库的结构,在测试服务器上面执行此脚本,如果没有错误,就可以在升级的时候执行合并的脚本,如果有错误则需要根据脚本名称记录的用户名找他纠错。

 

技巧:

1.  使用企业管理器修改完表之后,如何保存修改脚本


2.  如何设置每次修改了表结构之后自动提示保存修改脚本

在点击2中的按钮之后会出现下面的窗口,请按下图设置。

 

附件:

1.  合并脚本程序--下载

2.  1中程序的源码--下载

posted @ 2007-03-06 13:28  玉开  阅读(4136)  评论(22编辑  收藏  举报