获取数据太频繁,偶尔出现–事务与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品

.Net技术 码拜 9年前 (2016-02-26) 1293次浏览
static DataView getdv(string SQLText)
        {
            string strconn = System.Configuration.ConfigurationManager.AppSettings["kdatastrconn"];
            SqlConnection conn = new SqlConnection(strconn);
            conn.Open();
            SqlCommand mCommand = new SqlCommand(SQLText, conn);
            mCommand.CommandType = CommandType.Text;
            mCommand.CommandText = SQLText;
            mCommand.CommandTimeout = 3600;
            SqlDataAdapter adapter = new SqlDataAdapter();
            DataSet ds = new DataSet();
            adapter.SelectCommand = mCommand;
            adapter.Fill(ds, "t1");
            conn.Close();
            return ds.Tables[0].DefaultView;
        }
解决方案

100

5楼说的有道理。
频繁获取数据,应该使用DataReader,这个读取速度比dataset快。
当然,按照业务需求,看你不断获取数据,是要实时刷新吗?
你可以试试数据库通知服务 sqldependency
http://blog.csdn.net/adon_hua/article/details/4062426

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明获取数据太频繁,偶尔出现–事务与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品
喜欢 (0)
[1034331897@qq.com]
分享 (0)