连接字符串中的“服务器”与“数据源”

我是 SqlServer 的新手,现在我已经安装了 SqlLocalDb在本地工作。很好,但是我可以看到两个典型的连接字符串,它们都可以工作:

Data Source=(localdb)\v11.0;Integrated Security=true;

还有

Server=(localdb)\v11.0;Integrated Security=true;

这两者之间到底有什么区别?

56541 次浏览

它们是同义词——你可以使用任何一个。

也就是说,就框架而言,它们是相同的。

... Server 和 Data Source 之间没有区别,因为它们表示 SQL Server 的相同事物: 语法为“ MyComputerName MyShortInstanceName”的 SQL Server 实例的全名,可能包括 SQL Server 实例用于通信的端口。

参考资料: http://social.msdn.microsoft.com/Forums/en/sqldataaccess/thread/7e3cd9b2-4eed-4103-a07a-5ca2cd33bd21

有关所有连接字符串关键字的完整列表,包括那些完全同义的关键字,请参阅 SqlConnection.ConnectionString文档:

这些都是完全等价的:

  • 资料来源
  • 服务器
  • 地址
  • Addr
  • 网络地址

我最喜欢的设置是不包含任何空格的。在最简单的形式中,必须提供四个值—— URL、容器、用户和凭证。

  • 服务器
  • 资料库
  • User (或 uid)
  • 密码(或 pwd)

连接字符串如下所示。

Server = stuffy.databases.net ; database = stuffy; user = konrad; password = Abc123(.)(.) ;