探索ADO.NET連接池相關使用說明
ADO.NET連接池允許應用程序從連接池中獲得一個連接并使用這個連接,而不需要為每一個連接請求重新建立一個連接。一旦一個新的連接被創建并且放置在連接池中,應用程序。
技巧和提示
1.當你需要數據庫連接時才去創建連接池,而不是提前建立。一旦你使用完連接立即關閉它,不要等到垃圾收集器來處理它。
2.在關閉數據庫連接前確保關閉了所有用戶定義的事務。
3.不要關閉數據庫中所有的連接,至少保證連接池中有一個連接可用。如果內存和其他資源是你必須首先考慮的問題,可以關閉所有的連接,然后在下一個請求到來時創建連接池。
ADO.NET連接池faq
1.何時創建連接池?
當***個連接請求到來時創建連接池;連接池的建立由數據庫連接的連接字符創來決定。每一個連接池都與一個不同的連接字符串相關。當一個新的連接請求到來時如果連接字符串和連接池使用的字符串相同,就從連接池取出一個連接;如果不相同,就新建一個連接池。
2.何時關閉連接池?
當連接池中的所有連接都已經關閉時關閉連接池。
3.當連接池中的連接都已經用完,而有新的連接請求到來時會發生什么?
當連接池已經達到它的***連接數目時,有新的連接請求到來時,新的連接請求將放置到連接隊列中。ADO.NET連接池當有連接釋放給連接池時,連接池將新釋放的連接分配給在隊列中排隊的連接請求。你可以調用close和dispose將連接歸還給連接池。
4.我應該如何允許連接池?
對于.net應用程序而言,默認為允許連接池。(這意味著你可以不必為這件事情做任何的事情)當然,如果你可以在sqlconnection對象的連接字符串中加進pooling=true;確保你的應用程序允許連接池的使用。
5.我應該如何禁止ADO.NET連接池?
ado.net默認為允許數據庫連接池,如果你希望禁止連接池,可以使用如下的方式:
1)使用sqlconnection對象時,往連接字符串加入如下內容:pooling=false;
2)使用oledbconnection對象時,往連接字符串加入如下內容:ole db services=-4;
oling=true;確保你的應用程序允許ADO.NET連接池的使用。
5.我應該如何禁止連接池?#t#
ado.net默認為允許數據庫連接池,如果你希望禁止ADO.NET連接池,可以使用如下的方式:
1)使用sqlconnection對象時,往連接字符串加入如下內容:pooling=false;
2)使用oledbconnection對象時,往連接字符串加入如下內容:ole db services=-4;