MIS2000 Lab. -- ASP.NET学习&分享 / ASP.NET案例精编(清华大学出版社)
您好,我来自台湾。很高兴与各位分享一些成果。希望对您有帮助。出版书籍是「ASP.NET案例精编 / 清华大学出版社」。

[读书心得]SQL Server 连接共享--集区的建立及指派

http://www.dotblogs.com.tw/mis2000lab/archive/2011/04/07/connection_pool_20110407.aspx



最近在整理资料的时候,发现微软MSDN网站这个解释非常的清楚,尤其是底下的范例。

为自己作一个纪录,也分享给大家。


原文出处:http://msdn.microsoft.com/zh-tw/library/8xx3tyca.aspx




SQL Server 连接共享 (ADO.NET)

SQL Server Connection Pooling (ADO.NET)

================================
Pool Creation and Assignment
集区的建立及指派
================================



第一次开启连接时,会根据精确的比对算法建立连接集区,该算法可将集区与连接中的连接字符串相关联。

每个连接集区与 不同的连接字符串相关联。
开启新连接时,如果连接字符串与现有集区并不完全相符,则会建立新集区(请参阅下面的范例)。


连接共享的方式是以每个处理序、每个应用程序定义域、每个连接字符串,及 (使用整合安全性 / integrated security时) 每个 Windows识别进行的。连接字符串必须完全符合;以不同顺序针对同一连接所提供的关键词将会个别共享。



< 范 例 >

在下列 C#范例中,会建立三个新的 SqlConnection对象,但是只需要 两个连接集区来管理它们

请注意,第一个及第二个连接字符串的不同之处,在于指派给 Initial Catalog的值不同。




(1)  using (SqlConnection connection = new SqlConnection(
"Integrated Security=SSPI;Initial Catalog=Northwind"))

    {
        connection.Open();    
        //注: 开启了第一个集区A (Pool A)。
    }



(2)  using (SqlConnection connection = new SqlConnection(
"Integrated Security=SSPI;Initial Catalog=pubs"))

    {
        connection.Open();           
//注: 开启了第二个集区B (Pool B)。      
//    因为连结字符串与上面集区A略有不同。
    }



(3)  using (SqlConnection connection = new SqlConnection("Integrated
Security=SSPI;Initial Catalog=Northwind"))

    {
        connection.Open();    
        //注: 连结字符串与第一个相同,所以仍使用第一个集区A (Pool A)。
    }








今日值班正妹,南韩,南圭丽

图片来源:http://www.nownews.com/2011/04/07/350-2702439.htm










posted on 2011-04-25 18:01  MIS2000 Lab.  阅读(306)  评论(0)    收藏  举报


ASP.NET案例精编——适用于VS 2005/2008(配光盘)
 

当当网购买 http://product.dangdang.com/product.aspx?product_id=20583373&ref=search-1-pub