教你使用DataAdapter优化ADO.NET连接池

经过长时间学习ADO.NET连接池,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。用于ODBC的SQL Server、OLE DB和.NET框架数据提供程序隐式缓冲连接。通过在连接字符串中指定不同的属性值,可以控制ADO.NET连接池的行为。

成都创新互联从2013年成立,先为金堂县等服务建站,金堂县等地企业,进行企业商务咨询服务。为金堂县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

#T#DataAdapter 的Fill和Update方法在连接关闭的情况下自动打开为相关命令属性指定的连接。如果Fill或Update方法打开了连接,Fill或Update 将在操作完成的时候关闭它。为了获得***性能,仅在需要时将与数据库的连接保持为打开。同时,减少打开和关闭多操作连接的次数。如果只执行单个的Fill或Update方法调用,建议允许Fill或Update方法隐式打开和关闭连接。如果对Fill和Update调用有很多,建议显式打开连接,调用Fill和Update,然后显式关闭连接。另外,当执行事务时,显式地在开始事务之前打开连接,并在提交之后关闭连接。例如:

 
 
  1. 'Visual Basic
  2. Public Sub RunSqlTransaction(da As SqlDataAdapter, myConnection As SqlConnection, ds As DataSet)
  3. myConnection.Open()
  4. Dim myTrans As SqlTransaction = myConnection.BeginTransaction()
  5. myCommand.Transaction = myTrans
  6. Try
  7. da.Update(ds)
  8. myTrans.Commit()
  9. Console.WriteLine("Update successful.")
  10. Catch e As Exception
  11. Try
  12. myTrans.Rollback()
  13. Catch ex As SqlException
  14. If Not myTrans.Connection Is Nothing Then
  15. Console.WriteLine("An exception of type " & ex.GetType().ToString() & " was encountered while attempting to roll back the transaction.")
  16. End If
  17. End Try
  18. Console.WriteLine("An exception of type " & e.GetType().ToString() & " was encountered.")
  19. Console.WriteLine("Update failed.")
  20. End Try
  21. myConnection.Close()
  22. End Sub
  23. //C#
  24. public void RunSqlTransaction(SqlDataAdapter da, SqlConnection myConnection, DataSet ds)
  25. {
  26. myConnection.Open();
  27. SqlTransaction myTrans = myConnection.BeginTransaction();
  28. myCommand.Transaction = myTrans;
  29. try
  30. {
  31. da.Update(ds);
  32. myCommand.Transaction.Commit();
  33. Console.WriteLine("Update successful.");
  34. }
  35. catch(Exception e)
  36. {
  37. try
  38. {
  39. myTrans.Rollback();
  40. }
  41. catch (SqlException ex)
  42. {
  43. if (myTrans.Connection != null)
  44. {
  45. Console.WriteLine("An exception of type " + ex.GetType() +" was encountered while attempting to roll back the transaction.");
  46. }
  47. }
  48. Console.WriteLine(e.ToString());
  49. Console.WriteLine("Update failed.");
  50. }
  51. myConnection.Close();

当前文章:教你使用DataAdapter优化ADO.NET连接池
分享URL:http://www.csdahua.cn/qtweb/news26/524276.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网