尝试使用SQL数据库部署解决方案的问题

墨GFX

知名会员
已加入
2013年2月2日
留言内容
142
编程经验
Beginner
您好...

我正在创建一个将rss提要保存到数据库的解决方案的过程中....我已经完成了项目,但是当我创建安装程序安装器时似乎无法使数据库正常工作。几次尝试不同的事情,什么都没有起作用……请参见下面的屏幕截图以了解错误....

screen01.jpg

到目前为止,这是我所做的。

1.包括我在项目中使用的所有sql引用。
2.包括SQL Express Server的所有dll文件(共有7个文件)
3.选择dll并在我设置的属性中"copy to output" to "copy if newer"
4.在"System>Data.SqlServerCe" and set "Copy Local" to True.

然后在安装程序安装程序中添加所有先决条件,例如-

NET Framework 4.0(以防最终用户的计算机没有它)
Microsoft Sql Server 2008 Express SP 1(x86)

现在我看到了Microsoft Sql Server 2008 Express SP 1(x86&x64Wow)我应该使用这个吗?

请,任何帮助将不胜感激.....

谢谢
-InkedGFX
 
Last edited:

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,501
地点
悉尼,澳大利亚
编程经验
10+
SQL服务器 Express和SQL Server CE是完全不同的两件事。我无法想象您实际上是在合法地使用两者,因此您需要首先弄清楚正在使用的是哪个,然后再部署它所需要的东西,并摆脱与另一个有关的任何东西。那么,您的数据库文件是MDF还是SDF?前者用于SQL Server Express,后者用于SQL Server CE。
 

墨GFX

知名会员
已加入
2013年2月2日
留言内容
142
编程经验
Beginner
感谢您对这个问题的帮助……

我的数据库是MDF,所以我删除了所有带有ce名称的dll .....您知道我需要添加什么dll,以及需要在该项目中包含哪些引用吗?

-InkedGFX
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,501
地点
悉尼,澳大利亚
编程经验
10+
SQL服务器 Express基本上是SQL Server的精简版,因此使用它是相同的。这样,您不需要添加任何引用,因为SqlClient提供程序是完全在System.Data.dll程序集中定义的,大多数项目模板中默认都引用了该程序集。

与SQL Server CE不同,SQL Server Express是基于服务器的完整数据库,因此,如果要与应用程序一起部署MDF文件,则必须在客户端计算机上安装该服务器。如果您通过发布向导使用ClickOnce部署,或者使用安装项目来创建MSI安装程序,则只需在“先决条件”对话框中选中“ SQL服务器 Express”复选框,如果尚未安装,它将与您的应用程序一起自动安装目前,甚至默认情况下也会自动下载。我不确定它如何与InstallShield LE配合使用,但我希望它会与之相似。如果您使用其他部署工具,则必须查看文档以查看其是否可以自动处理数据库部署。如果仅使用XCOPY,则必须让用户自己安装SQL Server Express。
 
最佳 底部