

參見微軟的使用連接池說明:https://msdn.microsoft.com/zh-cn/library/8xx3tyca(v=vs.80).aspx
“警告:
我們建議您在使用完連接時一定要關閉連接,以便連接可以返回池。要關閉連接,可以使用 Connection 對象的 Close 或 Dispose 方法,也可以通過在 C# 的 using 語句中或在 Visual Basic 的 Using 語句中打開所有連接。不是顯式關閉的連接可能不會添加或返回到池中。例如,如果連接已超出范圍但沒有顯式關閉,則僅當達到最大池大小而該連接仍然有效時,該連接才會返回到連接池中。有關更多信息,請參見 Visual Basic 的using 語句(C# 參考)或如何:釋放系統資源。”
A.方法1(C#):
using (SqlConnection connection = new SqlConnection()) {
connection.ConnectionString = connectionString;
connection.Open();
//讀寫操作............................
//此處不用顯示關閉連接,因為using語法會關閉連接
}B.方法2(C#):
SqlConnection connection = new SqlConnection();
SqlConnection connection = new SqlConnection(ConnectionString);
string _sql = "Select * from [Data] where ......;
SqlCommand _cmd = new SqlCommand(_sql, connection);
connection.Open();
SqlDataReader _reader = _cmd.ExecuteReader(CommandBehavior.CloseConnection);//此處讀取完成后關閉讀取時關閉對應連接
SqlConnection.ConnectionString 屬性詳細見https://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.80).aspx
是否使能池程序在創建線程的當前事務上下文中自動登記連接 Enlist,是否從連接池取連接或創建新連接后存入合適的連接池Pooling,連接池最大最小值Max Pool Size,Min Pool Size