SQL数据库在第二台PC上初始化失败,提示'底层提供程序未能打开'

本文关键字:程序 提示 数据库 初始化 失败 PC 二台 SQL | 更新日期: 2023-09-27 18:09:08

我有一个VSExpress 2013解决方案(有3个项目)与实体框架(ADO.NET)访问SQL Server数据库。我能够将我的项目发布到原始源PC上,并且它按预期工作,但试图通过CD安装到第二台PC上失败。安装无法在本地SQL Server (localDB)上实例化或创建必要的数据库文件,尽管SQL Server Express (localDB)安装正确。

我试着添加一行:

Database.SetInitializer<PMMEntities>(new CreateDatabaseIfNotExists<PMMEntities>());

MainWindow(),在启动时初始化数据库。但是,在另一台PC上运行应用程序时,我仍然得到以下错误:

在建立到SQL Server的连接时发生了与网络相关或实例特定的错误。未找到服务器或无法访问服务器。验证实例名是否正确,SQL Server是否配置为允许远程连接。(提供者:SQL网络接口。

app.config中的连接字符串是(注意,我不是试图访问网络上的共享数据库,并且在另一台PC上的每个安装必须创建并运行自己的本地DB):

<connectionStrings>
    <add name="PMMEntities" 
         connectionString="metadata=res://*/PMMData.csdl|res://*/PMMData.ssdl|res://*/PMMData.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.'SQLEXPRESS;initial catalog=PMM;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" 
         providerName="System.Data.EntityClient" />
</connectionStrings>

我使用ClickOnce设置。我需要做些什么才能在其他pc上实现有效的安装,以便它们在第一次执行时实例化一个新数据库?

SQL数据库在第二台PC上初始化失败,提示'底层提供程序未能打开'

听起来SQL Express没有安装在第二台PC上,它正在以不同的实例名称安装,或者在ClickOnce部署期间安装失败。