以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [分享]项目发布后之三_升级时表结构有变动则自动修改表结构_Access  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=62917)

--  作者:黄训良
--  发布时间:2015/1/10 0:03:00
--  [分享]项目发布后之三_升级时表结构有变动则自动修改表结构_Access

项目发布后,根据用户需求或功能的开发、更新中,要不断地增加表,或者增加已有表中的列,当后台数据库中的表,列与用户使用的程序需要加载的表或列不一致时,就要在后台数据库增加相应的表或列,同时还要达到不影响用户数据的目的。以前的做法是写个SQL脚本发给用户管理员,在服务器上执行SQL脚本,很是麻烦。下面就是解决这些问题的方法。

  特点:1、用户只要导入更新文件,重启项目即可自动完成更新!

           2、自动识别更新的表名、列名、字段类型的相互约定,不符合约定则不生成更新文件。能够生成更新文件就可以保证更新顺利完成。

           3、一键搞定不出错:
            按钮只有两个:
            一个是开发者导出更新文件
            另一个是用户导入更新文件 

          备注: 还有一更完美的没做:自动识别后台数据库中已有列的修改(实现已有列不允许修改的目的),因为开发时要新增的表、列已记录在案,重复写的可能性不大!但还是请狐友们回帖完善!

     在此,特别感谢程兴刚老师、有点甜老师、Bin老师的大力帮助和指点!

     本来做的是SQL数据源开发版的,花了点时间写成Access数据库商业版,让更多狐友分享!

     20150103终结更新版。完全避免更新时报错,同时完善以下功能,需要致信邮箱498522011@qq.com

 1、表中存在同名列不新增的功能已完善。

 2、不存在同名列不提示,存在同名列则提示并发给管理员。

 3、当同名列的字段类型是字符类型列,对比其最大长度,若不一致时则更新。

       

 


以下内容只有回复后才可以浏览
[此贴子已经被作者于2016/12/19 22:04:38编辑过]

--  作者:yjd
--  发布时间:2015/1/10 0:18:00
--  
好好学习!
--  作者:as2517
--  发布时间:2015/1/10 0:21:00
--  
学习中
--  作者:kingnuo
--  发布时间:2015/1/10 2:43:00
--  
 谢谢分享!
--  作者:land089
--  发布时间:2015/1/10 7:11:00
--  
看看!!!!!!
--  作者:yyzlxc
--  发布时间:2015/1/10 8:07:00
--  
学习
--  作者:Bin
--  发布时间:2015/1/10 8:43:00
--  
用表储存起来,再判断这些表列不允许修改即可.

谢谢分享

--  作者:bzfc57
--  发布时间:2015/1/10 9:30:00
--  
看看
--  作者:freeants
--  发布时间:2015/1/10 12:13:00
--  
看看看,多谢
--  作者:blackzhu
--  发布时间:2015/1/10 13:37:00
--  
学习下