由於本人出生貧寒,還未能領略Orcle,DB2等大哥哥,以前經常用ACCESS在學校中玩耍,後來就是SQL。對於ACCESS的連接字符串沒什麼變化,都是那麼一句或許有其他的Provider;對於SQL我也經常用Visual Studio連接數據庫,然後在服務器的屬性中復制連接字符串,一直以來都沒有對他的字符串真正認真過。現在由於要接觸EnterpriseLibrary所以就從網上網羅了一下,把他總結下來,順便可以鞏固一下,從此不再模糊…
ConnectionString主要要認清他的幾個關鍵字,這裡也主要介紹一下他的光健字,他的將不在這裡講述:
Application Name: 應用程序的名稱,如果不提供應用程序名稱,默認為“.Net SqlClient Data Provider”。
AttachDBFilename/extended properties/Initial File Name: 可連接數據庫的主文件的名稱,包括完整的路徑名, 必須使用關鍵字“database”來指定數據庫的名稱。
Connect Timeout/Connection Timeout: 在終止嘗試連接並產生錯誤之前,等待與服務器的連接的時間長度(以秒為單位),默認為15。
Current Language: SQL Server 語言。
Data Source/Server/Address/Addr/Network Address: 要連接的 SQL Server 實例的名稱或網絡地址。
Encrypt: 當該值為 true 時,如果服務器端安裝了證書,則 SQL Server 將對所有在客戶端和服務器之間傳送的數據使用 SSL 加密。可識別的值為 true、false、yes 和 no,默認值為false。
Initial Catalog/Database: 數據庫的名稱。
Integrated Security /Trusted_Connection: 當為 false 時,將在連接中指定用戶 ID 和密碼。當為 true 時,將使用當前的 Windows 帳戶憑據進行身份驗證。 可識別的值為 true、false、yes、no 以及與 true 等效的 SSPI(強烈推薦)。
Network Library/Net: 用於建立與 SQL Server 實例的連接的網絡庫。支持的值包括 dbnmpntw(命名管道)、dbmsrpcn(多協議)、dbmsadsn (Apple Talk)、dbmsgnet (VIA)、dbmslpcn(共享內存)及 dbmsspxn (IPX/SPX) 和 dbmssocn (TCP/IP)。 相應的網絡 DLL 必須安裝在要連接的系統上。如果不指定網絡而使用一個本地服務器(比如“.”或“(local)”),則使用共享內存。
Packet Size: 用來與 SQL Server 的實例進行通訊的網絡數據包的大小,以字節為單位,默認為8192。
Password/Pwd: SQL Server 帳戶登錄的密碼(建議不要使用。為了維護最高級別的安全性,強烈建議改用 Integrated Security 或 Trusted_Connection 關鍵字)。
Persist Security Info: 當該值設置為 false 或 no(強烈推薦)時,如果連接是打開的或者一直處於打開狀態,那麼安全敏感信息(如密碼)將不會作為連接的一部分返回。重置連接字符串將重置包括密碼在內的所有連接字符串值。可識別的值為 true、false、yes 和 no,默認為false。
User ID: SQL Server 登錄帳戶(建議不要使用。為了維護最高級別的安全性,強烈建議改用 Integrated Security 或 Trusted_Connection 關鍵字)。
Workstation ID: 連接到 SQL Server 的工作站的名稱,默認為本地計算機名稱。
ConnectionString 內連接池值的有效名稱:
Connection Lifetime: 當連接被返回到池時,將其創建時間與當前時間作比較,如果時間長度(以秒為單位)超出了由 Connection Lifetime 指定的值,該連接就會被銷毀。這在聚集配置中很有用(用於強制執行運行中的服務器和剛置於聯機狀態的服務器之間的負載平衡)。 零 (0) 值將使池連接具有最大的連接超時,默認值為0。
Connection Reset: 確定從池中提取數據庫連接時是否重置數據庫連接。對於 Microsoft SQL Server 7.0 版,設置為 false 可避免獲取連接時再有一次額外的服務器往返行程,但須注意此時並未重置連接狀態(如數據庫上下文),默認值為true。
Enlist: 當該值為 true 時,池程序在創建線程的當前事務上下文中自動登記連接。可識別的值為 true、false、yes 和 no,默認值為true。
Max Pool Size: 池中允許的最大連接數。
Min Pool Size: 池中允許的最小連接數。
Pooling: 當該值為 true 時,系統將從相應池中提取 SQLConnection 對象,或在必要時創建該對象並將其添加到相應池中。可識別的值為 true、false、yes 和 no,默認值為true。
以上搜集於MSDN,所有或更多的內容可以上MSDN看到,這裡只是為了更容易自己的閱讀和鞏固知識所用,同時也希望對這個天天都要用但又不是真正知道所有應用的開發人員更直觀的閱讀。