谁能告诉我以下连接字符串之间的有效区别:
我相信两者都是一样的.指定"网络库= DBMSSOCN"使用TCPIP显式连接,并且前缀服务器值与TCP做同样的事情.
请告诉我在web.config中指定这些设置是否存在任何差异或性能影响.
两个选项之间的区别是:
指定协议
通过使用,
多协议= rpc
共享内存= lpc
NWlink IPX/SPX = spx
Banyan VINES =葡萄藤
Apple Talk = adsp
TCP = tcp
这是推荐的方式.我觉得它更安全,因为DLL名称比协议名称更有可能改变.
它还允许您更改端口号,而不是使用SQL Server客户端网络实用程序全面配置它.
在没有dll扩展名的情况下指定库
指定库将使用与没有.dll扩展名的实际网络DLL库文件相同的名称.
例:
TCP/IP:C:\ WINDOWS\system32\DBMSSOCN.dll
命名管道:C:\ WINDOWS\system32\DBNMPNTW.dll
多协议(RPC):C:\ WINDOWS\system32\DBMSRPCN.dll
NWLink IPX/SPX:C:\ WINDOWS\system32\DBMSSPXN.dll
AppleTalk:C:\ WINDOWS\system32\DBMSADSN.dll
Banyan VINES:C:\ WINDOWS\system32\DBMSVINN.dll
当您想要编写自己的网络库时,这将最有效.请参阅SQL Server客户端网络实用程序.
性能权衡是微小的,并不明显.最好坚持使用标准并在web.config中进行配置,因为其他开发人员将知道在哪里查找连接设置.类似于在java中拥有数据源连接.