现在的位置: 首页 > 综合 > 正文

制作DNN模块的数据库安装和卸载脚本

2012年11月12日 ⁄ 综合 ⁄ 共 896字 ⁄ 字号 评论关闭

1、当模块开发完成数据表和存储过程就都已经完成了。
注意:在编写存储过程时将表名和存储过程名前面加上“dbo.”。(否则随后替换的时候可能要增加工作量)
2.在SQL Server企业管理器中生成相关对象的SQL脚本
3.制作版本.sqldataprovider文件
a.将生成的数据库表和存贮过程及函数等的脚本拷贝到一个文件中
b.替换
“[dbo].[”替换为“{databaseOwner}[{objectQualifier}”
“dbo.”替换为“{databaseOwner}{objectQualifier}”
“FK_”替换为“FK_{objectQualifier}”
“PK_”替换为“PK{objectQualifier}_”
“DF_”替换为“DF{objectQualifier}_” (“DF_”为添加默认值)
c.去掉
去掉脚本中类似:
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
d注意事项:

一个值得注意的问题:
SQL Server数据库的安装/卸载脚本,是通过SqlDataProvider类中的ExecuteScript方法执行的。该方法中有这么一句“Dim Delimiter As String = "GO" & ControlChars.CrLf”,也就是说是以:“GO+回车换行符”来分割一段SQL脚本中每一个可被执行的SQL语句。利用Split分隔每一个语句到一个数组中,通过循环执行每一个SQL。这样我们在写数据库的安装/卸载脚本时一定要注意在每一个语句后面都加上“GO+回车换行符”,特别是最后一句的“回车换行符”一定不能忘记。否则,最后一句要么执行不了,要么会报错。

还有一个值得注意的问题:
数据库的安装/卸载脚本文件必须以utf-8编码格式保存,否则可能会报错。

4.制作unstall.sqldataprovider
a.利用查询分析器中表,存储过程,表中的关系的除去功能生成SQL脚本
b.重复上边的制作步骤
5.利用DNN模块定义中的创建私有程序集来生成模块安装包.

抱歉!评论已关闭.