Asp.net

這些連接字元串之間的區別?

  • March 21, 2018

誰能告訴我以下連接字元串之間的有效區別:

<add key="ConnectionString" value="server=tcp:192.168.0.12\Sqlserver2005;database=;user id=sa;password=;">



<add key="ConnectionString" value="server=192.168.0.12\Sqlserver2005;database=;user id=sa;password=;Network Library=DBMSSOCN;">

我相信兩者實際上是相同的。指定“Network Library=DBMSSOCN”使用 TCPIP 顯式連接並使用 TCP 為伺服器值添加前綴執行相同的操作。

請告訴我在 web.config 中指定這些設置是否有任何區別或任何性能影響。

這兩個選項的區別是:

指定協議

通過使用任何一個,

多協議 = rpc

共享記憶體 = lpc

NWlink IPX / SPX = spx

榕樹 VINES = 藤蔓

蘋果談話 = 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

榕樹藤蔓:C:\WINDOWS\system32\DBMSVINN.dll

當您想編寫自己的網路庫時,這將最有效。請參閱 SQL Server 客戶端網路實用程序。

性能權衡是微小的,並不明顯。最好遵守標準並在 web.config 中對其進行配置,因為其他開發人員會知道在哪裡查找連接設置。類似於在 java 中具有數據源連接。

引用自:https://stackoverflow.com/questions/1530675