我想运行c#程序,而不改变SQL Server实例或不改变SQL Server安装的PC名

本文关键字:SQL Server 改变 安装 PC 实例 运行 程序 | 更新日期: 2023-09-27 18:05:06

我有一个使用SQL Server R2作为数据库的c#应用程序。该数据库位于另一台名为SERVER的电脑上。SQL Server的实例名也是server .

我的windows应用程序使用DataSet与数据库通信。现在我的SQL安装PC的名称改为另一个名称,如SERVERHP。现在我所有的编码工作都想改变我的连接字符串。还有其他简单的方法吗?

我试图编辑hosts文件,但它不适合我。

这是我的编码风格(http://goo.gl/FQrkp)。我使用DataSetDataAdapter与IDE设计器。

我有100 ~ 150个表格。现在我不能编译所有的代码。我想要一个简单的方法连接SQL Server数据库。

我想有一种方法来隐藏计算机主机名的更改

我想运行c#程序,而不改变SQL Server实例或不改变SQL Server安装的PC名

您有两个选择:

  1. 将app中连接字符串中的所有服务器名全局替换为IP地址

  2. 全局替换应用中所有新的服务器名

  3. 将CNAME记录添加到服务器上的DNS表(当然假设您在同一网络中,如果您正在使用计算机名称)

  4. 在LMHOSTS文件中添加一个条目(您可以添加任意多个指向相同IP的名称)

据我所知,它是用于连接到数据库的SqlConnection,或类似的东西。为什么不使用SqlConnectionStringBuilder?然后,您可以动态地构造所需的连接字符串。此外,要获取服务器列表,您可以使用SqlDataSourceEnumerator,从名称空间System.Data.Sql.

听起来好像你想有一种方法来隐藏运行SQL Server的计算机(服务器/桌面/Windows的虚拟化实例,无论什么)的主机名的变化。

这不是我的专业领域,但我想不出一种只涉及应用程序代码和计算机的方法。

如果你控制本地DNS,你可以创建一个CNAME条目,旧名称"指向"新名称。根据连接字符串的存储方式,您可能需要编辑它们,也可能不需要。但是你不必担心你的SQL Server的位置再次改变,因为你可以随时编辑你的CNAME指向新的位置。

注意未来-不是你现在的问题:如果你继续使用MS SQL Server,你会想要小心移动到一个电脑,它不是默认的实例,因为你需要把实例名在连接字符串,这可能会迫使你编辑你所有的应用程序web。

您正在使用Visual Studio 2012进行开发工作吗?我遇到了与迷你SQL db VS安装(使用高级版本)的冲突,不得不修改我的机器的ConnectionStrings部分。配置文件指向我的SQL数据库。无论出于何种原因,VS都会在Machine中写入对mini db的引用。配置文件(无论你使用的是。net的哪个版本)抛出潜在的冲突。

该文件可以在%systemroot%'Microsoft中找到。Net'Framework64'dot Net version'Config

如果你使用的是x86处理器,Framework64文件夹就叫做'Framework'。