使用c#数据库连接池

使用c#数据库连接池

ID:34739639

大小:52.21 KB

页数:3页

时间:2019-03-10

使用c#数据库连接池_第1页
使用c#数据库连接池_第2页
使用c#数据库连接池_第3页
资源描述:

《使用c#数据库连接池》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、使用C#数据库连接池连接到数据库服务器通常由几个需要软长时间的步骤组成。必须建立物理通道(例如套接字或命名管道),必须与服务器进行初次连接,必须分析连接字符串信息,必须由服务器对连接进行身份验证,等等。实际上,大部份的应用程序都是使用一个或几个不同的连接配置。当应用程序的数据量和访问量大的时候,这意味着在运行应用程序的过程中,许多相同的连接将反复地被打开和关闭,从而会引起数据库服务器效率低下甚至引发程序崩溃。为了确保应用程序的稳定和降低性能成本,我们可以在ADO.NET中使用称为连接池的优化方法来管理维护连接。C#数据库连接池可以减少创建连接的次数。定义最小

2、连接数(固定连接数),当用户在连接上调用Open,连接池就会检查池中是否有可用的连接。如果发现有连接可用,会将该连接返回给调用者,而不是创建新连接。应用程序在该连接上调用Close时,连接池会判断该连接是否在最小连接数之内,如果“是”会将连接回收到活动连接池中而不是真正关闭连接,否则将烧毁连接。连接返回到池中之后,即可在下一个Open调用中重复使用。创建C#数据库连接池以下示例使用C#连接SQL数据库:1.classDbConn2.{3.//usingSystem.Data;4.//usingSystem.Data.SqlClient;5.privateco

3、nstintMaxPool=10;//最大连接数6.privateconstintMinPool=5;//最小连接数7.privateconstboolAsyn_Process=true;//设置异步访问数据库8.//在单个连接上得到和管理多个、仅向前引用和只读的结果集(ADO.NET2.0)9.privateconstboolMars=true;10.privateconstintConn_Timeout=15;//设置连接等待时间11.privateconstintConn_Lifetime=15;//设置连接的生命周期12.privatestringC

4、onnString="";//连接字符串13.privateSqlConnectionSqlDrConn=null;//连接对象14.15.publicDbConn()//构造函数16.{17.ConnString=GetConnString();18.SqlDrConn=newSqlConnection(ConnString);19.}20.21.privatestringGetConnString()22.{23.return"server=localhost;"24.+"integratedsecurity=sspi;"25.+"database=pu

5、bs;"26.+"MaxPoolSize="+MaxPool+";"27.+"MinPoolSize="+MinPool+";"28.+"ConnectTimeout="+Conn_Timeout+";"29.+"ConnectionLifetime="+Conn_Lifetime+";"1.+"AsynchronousProcessing="+Asyn_Process+";";2.//+"MultipleActiveResultSets="+Mars+";";3.}4.5.publicDataTableGetDataReader(stringStrSql)

6、//数据查询6.{7.//当连接处于打开状态时关闭,然后再打开,避免有时候数据不能及时更新8.if(SqlDrConn.State==ConnectionState.Open)9.{10.SqlDrConn.Close();11.}12.try13.{14.SqlDrConn.Open();15.SqlCommandSqlCmd=newSqlCommand(StrSql,SqlDrConn);16.SqlDataReaderSqlDr=SqlCmd.ExecuteReader();17.if(SqlDr.HasRows)18.{19.DataTabledt=

7、newDataTable();20.//读取SqlDataReader里的内容21.dt.Load(SqlDr);22.//关闭对象和连接23.SqlDr.Close();24.SqlDrConn.Close();25.returndt;26.}27.returnnull;28.}29.catch(Exceptionex)30.{31.System.Windows.Forms.MessageBox.Show(ex.Message);32.returnnull;33.}34.finally35.{36.SqlDrConn.Close();37.}38.}39.

8、}通过调用SqlDrConn.Open()方法打开连

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。