本文共 2993 字,大约阅读时间需要 9 分钟。
开发人员都知道,我们在每次用程序操作数据库的时候,至少要经过三步
1、连接数据库:登录数据库服务器。 2、执行操作:执行sql语句或者存储过程等。 3、关闭连接:注销用户。 所以,每次在通过connection 向数据库服务器申请连接的时候非常的费时和消耗资源。
首先我们通过一个实例来演示一下开启连接池和关闭连接池的效果:
我要测试1000次打开关闭数据库所用的时间。
using System;using System.Data.SqlClient;using System.Diagnostics;namespace 开启ADO.NET资源池{ class Program { static void Main(string[] args) { string constr = "Data Source=.;Initial Catalog=crb_tpm;uid=sa;pwd=123456"; Stopwatch watch = new Stopwatch();//用户测量运行时间 watch.Start(); for (int i = 0; i < 1000i++) { using (SqlConnection con = new SqlConnection(constr)) { con.Open(); con.Close(); } } watch.Stop(); Console.WriteLine(watch.Elapsed);//打印总运行时间 Console.ReadKey(); } }}
我要测试1000次打开关闭数据库所用的时间。
using System;using System.Data.SqlClient;using System.Diagnostics;namespace 开启ADO.NET资源池{ class Program { static void Main(string[] args) { // string constr = "Data Source=.;Initial Catalog=crb_tpm;uid=sa;pwd=123456"; string constr = "Data Source=.;Initial Catalog=crb_tpm;uid=sa;pwd=123456;pooling=false";//pooling=false表示关闭连接池 Stopwatch watch = new Stopwatch();//用户测量运行时间 watch.Start(); for (int i = 0; i < 1000; i++) { using (SqlConnection con = new SqlConnection(constr)) { con.Open(); con.Close(); } } watch.Stop(); Console.WriteLine(watch.Elapsed);//打印总运行时间 Console.ReadKey(); } }}
我们在通过下面的两个图看一下原因:
其实大家可以知道,每次连接数据库的时候,进行的步骤很多 :