日期:2014-05-17  浏览次数:20603 次

数据库每次都new一个SqlConnection是不是影响效率?
比如每个操作都建立连接
        public static int GetCount(string strSQL)
        {
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                SqlCommand cmd = new SqlCommand(strSQL, connection);
               ..............


还有就是connection 作为成员变量,在初始化时建立连接
if(connection == null)
    SqlConnection connection = new SqlConnection(connectionString)


哪种效果好??

------解决方案--------------------
最好不要频繁new,虽然c#提供一个连接池,如果连接字符串完全一样,就会从池中取出,不会重新增加一个连接
------解决方案--------------------
如果连接字符串完全一样,就会从池中取出,不会重新增加一个连接 

就是楼上的这句话 
------解决方案--------------------
能用事务的地方就用事务,多句sql同时执行 最好写在存储过程 或者用一个connection执行
------解决方案--------------------
个人认为,用到时再链,用完就释放,不要占资源不做事
------解决方案--------------------
每一次创建都会从数据库连接池里拿取一个连接,所以如果不是要用,不要这么做,或者创建以后及时调用Dipose方法归还连接池