微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

提高了将数据写入MYSQL数据库的性能

如何解决提高了将数据写入MYSQL数据库的性能

| 在我的应用程序中,在将数据表插入结束后,将使用一个线程将数组值插入到数据表中。从一个线程开始,将该数据表插入MysqL数据库中。在第一个线程中,数据表行的长度是可变的。 考虑例如第一个数据表包含12行                   第二个包含1000行                   第三包含700行 在更新数据库中,我将使用dataadapter.update(datatable) 这些所有线程在第一次快速发布然后第三次发布然后第二次发布时都停在此行。但是我想按数量发布它们,并且还提高了更新数据库性能。此过程将缓慢进行。 任何已知的解决方案都可以提高将数据写入到磁盘的性能。 然后告诉我MysqL数据库。 提前拉动。     

解决方法

        完成事务中的所有提交。
DataSet ds = new DataSet(); // obtain your DataSet

SqlDataAdapter dataAdapter = new SqlDataAdapter();
SqlConnection cn = new SqlConnection(yourConnString);
cn.Open();

SqlTransaction trans = cn.BeginTransaction();

SqlDataAdapter dataAdapter = new SqlDataAdapter();
dataAdapter.InsertCommand.Transaction = trans;
dataAdapter.UpdateCommand.Transaction = trans;

try
{
    dataAdapter.Update(ds); /// or dataAdapter.Insert(ds)
    trans.Commit();
}
catch
{
    trans.Rollback();
}

cn.Close();
如果您一次提交一行,它将比在事务中完成全部操作慢很多。试一试;我知道您说过MySql,所以您可能必须相应地调整示例。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。