27

在一个通用代码库上工作,一位开发人员正在运行 SQL Server Express 2005,另外 2 位正在运行 SQL Server 2005。一切正常,但连接字符串不同。为了维护通用配置和构建脚本,我们希望像其他 2 个开发人员一样将“localhost\sqlexpress”屏蔽为“localhost” 。

这可以做到吗?或者,也许有更好的方法让所有 3 个都在相同的连接字符串上运行......寻求的解决方案是让所有 3 个都能够在代码存储库中的相同文件版本上运行。

我可能不是 100% 清楚:基本上我想要这个:

Data Source=localhost;Initial Catalog=Sample;Integrated Security=True

连接与此完全相同:

Data Source=localhost\sqlexpress;Initial Catalog=Sample;Integrated Security=True

如果可能的话。

4

3 回答 3

58

只是测试了一些东西并让它工作。

sql express 默认不启用 tcp/ip,启用时不使用默认端口 1433。

要做到这一点,您需要打开“Sql server configuration manager”,然后在协议下启用 tcp/ip。之后双击“tcp/ip”,选择“IP 地址”选项卡并滚动到底部,然后空白“TCP 动态端口”并在 TCP 端口下输入 1433。

毕竟重新启动 sql server 服务,它应该可以使用正常的连接字符串。

于 2009-01-16T06:16:26.580 回答
0

您可以将 SQL Server 实例命名为任何您想要的名称。我很确定您也可以在 SQL Express 中执行此操作,因此只需将每台机器上的实例命名为相同的名称,然后您就可以使用 localhost\<name>。

或者更好的是,不要对数据库名称进行硬编码。从某些机器或用户特定的设置(注册表,配置文件,任何适合您的 :) 加载它。

于 2009-01-16T05:53:34.847 回答
0

这个话题已经死了,我敢肯定......但这也有助于某人:

“一个开发人员正在运行 SQL Server Express 2005,另外 2 个正在运行 SQL Server 2005”

当他们安装时,实例很可能被命名为 MSSQLSERVER。当您安装时,该实例很可能被命名为 SQLEXPRESS。MSSQLSERVER 可作为 localhost 开箱即用,而 SQLEXPRESS 则不能。您可以通过在安装时将 SQLEXPRESS 重命名为 MSSQLSERVER 在 SQL Server Express 中解决此问题,以供将来参考。

约翰的解决方案显然更干净。

于 2013-11-11T20:08:05.383 回答