正如问题标题所述;我有一个桌面应用程序,它是连接到SQL数据库的visual studio项目。我想为这个项目创建一个exe文件(安装文件),如何用它附加数据库?
感谢。
解决方案的同样问题:Quick deployment of Visual Studio 2010 app with SQL database
答案 0 :(得分:3)
如果是SQL服务器,我建议将数据库编写到文件脚本,并使用自定义操作使用该脚本针对变量中指定的数据库服务器调用osql。
答案 1 :(得分:2)
将MDF作为内容文件添加到项目中。安装程序会将内容文件复制到安装文件夹,因此这只是在应用程序中正确使用该数据库的问题。 SMO也许可以提供帮助。
答案 2 :(得分:0)
仅在安装期间创建数据库,通过运行脚本进行创建和初始化(如果需要)
使用自定义脚本和自定义对话框来实现此目的。
答案 3 :(得分:0)
您可以将xcopy deployment与SQL Server Express数据库一起使用。从提到的链接:
使您的应用程序使用SQL的Xcopy部署功能 在Server Express中,您必须确保使用的连接字符串 在您的应用程序中包含适当的参数:
使用数据源参数,但将计算机名称更改为 句点(。)或(本地)。您还必须指定名称 例如,除非您确定SQL Server Express将永远存在 安装在一个未命名的实例上。
使用初始目录或数据库参数,但不要设置 参数值。
添加AttachDBFileName参数并将其设置为名称和路径 .mdf文件。 Attachdbfilename是一个SqlClient连接字符串 允许在运行时附加数据库并自动生成的选项 数据库名称。 DataDirectory关键字允许您指定相对关系 数据库文件的路径。 Attachdbfilename也可以帮助数据库 可移植性。有关Attachdbfilename的更多信息,请参阅 Visual Studio 2005文档。
以下连接字符串将附加MyDb.mdf数据库 文件,与应用程序可执行文件位于同一文件夹中 在本地计算机上运行的SQL Server Express实例。
@"Data Source='.\SQLExpress'; Initial Catalog=; Integrated
Security=true; AttachDBFileName='" |DataDirectory| +
@"\MyDb.mdf'"