[DNN模块开发]如何写模块数据库安装脚本

    类别:Css知识  贡献者:chawenhua  总点击:658  受欢迎度:10  更新日期:2008年12月04日
简介:编写DotNetNuke(以下简称DNN)模块相关数据库安装/卸载脚本,是模块开发的一个重要环节。DNN程序会根据模块相关的脚本自动安装或卸载模块相关的表和存储过程等。  DNN中模块的数据库安装脚本一般命名为:版本号.具体数据访问Provider名称(如对应SQLServer的安装文件可为:01.00.00.SqlDataProvider)。在上传新模块时,DNN的模块安装程序,会根据DNN文件中所列举的数据库脚本清单,按版本顺序执行数据库脚本。如果是升级安装...
  • 编写DotNetNuke(以下简称DNN)模块相关数据库安装/卸载脚本,是模块开发的一个重要环节。DNN程序会根据模块相关的脚本自动安装或卸载模块相关的表和存储过程等。  DNN中模块的数据库安装脚本一般命名为:版本号.具体数据访问Provider名称(如对应SQLServer的安装文件可为:01.00.00.SqlDataProvider)。在上传新模块时,DNN的模块安装程序,会根据DNN文件中所列举的数据库脚本清单,按版本顺序执行数据库脚本。如果是升级安装则只执行大于当模块前版本的数据库安装脚本。所以在编写下一个版本的数据库安装脚本时一定要记住这一点:在原来的基础上修改,而不是全部重写。比如:你有一个模块在下一个版本的改动中只是添加了一个存储过程,那么这个版本的数据库脚本只需包含创建该存储过程的代码即可,无需重写全部对象。同时还要注意模块版本与数据库脚本版本的统一。

      DNN中模块的数据库卸载脚本一般命名为:Uninstall.具体数据访问Provider名称(如对应SQLServer的卸载文件可为:Uninstall.SqlDataProvider)。在删除模块时,DNN会根据这个文件的内容删除模块相关的表和存储过程。

    编写脚本的步骤可如下(已SQL Server数据库为例):1、在数据库中创建要使用到的表和存储过程。2、可先用SQL Server的查询分析器生成相关表和存储过程的创建/除去脚本。3、将这些对象的脚本复制到一个文件中,并在表和存储过程对象名称前面加上{databaseOwner}{objectQualifier}前缀;在主/外键名称上加上{objectQualifier}前缀,如:PK{objectQualifier}_CLinks、FK_{objectQualifier}CLinks_Modules。关于{databaseOwner}{objectQualifier}的含义和用途可参见:http://www.cnblogs.com/csdn/archive/2004/11/30/71118.html4、按照数据库安装/卸载脚本的命名规则分别命名文件。5、具体的一些做法,也可参照已有模块的数据库安装/卸载脚本文件6、好像有个模版也可以编写存储过程,不过好像用途不大,有兴趣的可以去看看:http://dnnjungle.vmasanas.net/Development/Templates/tabid/28/Default.aspx一个值得注意的问题:SQL Server数据库的安装/卸载脚本,是通过SqlDataProvider类中的ExecuteScript方法执行的。该方法中有这么一句“Dim Delimiter As String = "GO" & ControlChars.CrLf”,也就是说是以:“GO+回车换行符”来分割一段SQL脚本中每一个可被执行的SQL语句。利用Split分隔每一个语句到一个数组中,通过循环执行每一个SQL。这样我们在写数据库的安装/卸载脚本时一定要注意在每一个语句后面都加上“GO+回车换行符”,特别是最后一句的“回车换行符”一定不能忘记。否则,最后一句要么执行不了,要么会报错。

    还有一个值得注意的问题:数据库的安装/卸载脚本文件必须以utf-8编码格式保存,否则可能会报错。相关内容:DNN模块的层次划分:http://www.cnblogs.com/esshs/archive/2005/07/27/201190.html关于模块文件结构:http://www.cnblogs.com/esshs/archive/2005/07/21/197198.html关于DNN文件结构:http://www.cnblogs.com/esshs/archive/2005/07/26/200154.html

    补充本知识点暨快乐评论此文章:'做网页:[DNN模块开发]如何写模块数据库安装脚本.'

0
0
(小技巧:顶的越多,则文章被推荐到首页的机会越大) 上一篇 下一篇
复制本页网址,与你QQ/MSN上的好友分享  温馨提示:如果您喜欢本站,请把她推荐给您的朋友们!
现在有0人对本文发表评论 查看所有评论
您的姓名: * 可选项,留空即为匿名发表
评论内容:
剩余字数:  * 按 Ctrl + Enter 直接发送.
            »»我要发表
相关文章推荐
合作伙伴: 百度 DMOZ节假日 网站之家 第一农业 英语乐园 商录 热门词 网络文学 第一网址之家  更多» >>加入本站作者团
首页 | 关于我们 | 网站地图 | 合作伙伴 | 部分作者 | 会员注册 | 会员登陆 | 友情链接 | 联系方式 | 收藏本站
八方资源网联盟网站: 八方资源网国际站 阿德采购网 美国大黄页 开放企业目录 湘村小厨房 中国公交线路查询网
2004-2008 网页制作学习网 ICP备05001479号

ICP备案