简单了解ADO.NET SqlConnection新特性

开发 后端
这里就ADO.NET SqlConnection的一些新特性简单的分析一下,文章有一个关于取得数据库查询的执行时间的小案例,大家可以看看代码的思路和过程。

ADO.NET2.0的特性想必大家也都体验到它的好处了,它的新特性让你爱不释手,所谓一分耕耘,一分收获,付出了就一定会有回报的,说了这么多还是希望大家多了解了解ADO.NET原理机制,我们这里就先不和大家说关于原理的分析了,我们就ADO.NET SqlConnection的一些新特性来分析一下吧。

#T#ADO.NET框架支持两种模式的数据访问:连接模式(Connected)和非连接模式(disconnected)。这一节介绍如何使用连接模式访问数据库中的数据,利用ADO.NET中的 Connection,Command,DataReader来获取和修改数据库中的数据 。使用RetrieveStatistics()方法获得数据命令执行时的统计信息,例如,可以获取总命令执行时间的统计信息。

ADO.NET SqlConnection统计信息有以下常用属性可以获得:
◆BytesReceived : 查询中接收到的字节数
◆BytesSend : 发送出数据的字节数
◆ConnectionTime : 当前连接被开启的总时间
◆ExecutionTime : 返回以毫秒为单位的连接执行时间
◆IduCount: 用于返回被执行Insert、Update、Delete命令的次数
◆IduRows : 用于返回被执行Insert、Update、Delete命令的行数
◆SelectCount: 用于返回Select命令执行的次数
◆SelectRows : 用于返回Select命令执行的行数

ADO.NET SqlConnection案例分析:取得数据库查询的执行时间 

  1. // Movies类中的GetAll方法返回一个List对象,该对象可以被GridView等控件做为数据源绑定  
  2. namespace  DawnDataObject  
  3. {  
  4. public class Movies  
  5. {  
  6. public static readonly string _connectionString;    
  7. // 连接数据库字符串为静态成员,每个实例共享。  
  8.  
  9. static Movies(){  
  10. _connectionString = WebConfigurationManager.ConnectionStrings["DawnEnterpriseDBConnectionString"].  
  11. ConnectionString;  
  12. }  
  13.  
  14. private string _title;  
  15. private string _director;  
  16.  
  17. // Movies类中包括的属性有Title、Director  
  18. public string Title{  
  19. get { return _title; }  
  20. set { _title = value; }  
  21. }  
  22. public string Director {  
  23. get { return _director; }  
  24. set { _director = value; }  
  25. }  
  26.  
  27. // Movies类中的GetAll方法返回一个List对象,该对象可以被GridView等控件做为数据源绑定  
  28. public List<Movies> GetAll(out long executeTime)    
  29. // executeTime作为out参数  
  30. {  
  31. List<Movies> result = new List<Movies>();  
  32. SqlConnection conn = new SqlConnection(_connectionString);  
  33. SqlCommand comm = new SqlCommand("WAITFOR DELAY '0:0:03';select Title,Director from Movies", conn);  
  34. conn.StatisticsEnabled = true;   // 开启获取统计信息的功能  
  35. using(conn){  // using关键字指定了conn一旦离开这个代码段,自动调用其Dispose函数  
  36. conn.Open();  
  37. SqlDataReader reader = comm.ExecuteReader();  
  38. while(reader.Read()){  
  39. Movies newnewmovie = new Movies();  
  40. newmovie._title = (string)reader["Title"];  
  41. newmovie._director = (string)reader["Director"];  
  42. result.Add(newmovie);  
  43. }  
  44. IDictionary stats = conn.RetrieveStatistics();  
  45. executeTime = (long)stats["ExecutionTime"];  
  46. return result;  
  47. }  
  48. }  
  49. }  
责任编辑:田树 来源: 博客
相关推荐

2009-03-12 11:26:35

Data ServicADO.NET.NET

2009-11-04 14:17:34

ADO.NET 2.0

2009-12-23 10:18:21

ADO.NET 应用程

2009-12-29 16:02:48

ADO.NET新特性

2009-12-24 09:34:47

调用ADO.NET

2009-11-11 15:09:35

ADO.NET数据集

2009-12-29 10:26:43

ADO.NET实体框架

2009-12-29 10:36:24

ADO.NET 工具

2009-11-04 10:07:52

ADO.NET DbP

2009-12-21 13:59:03

ADO.NET特性

2009-11-04 13:20:28

ADO.NET Dat

2009-12-22 10:27:01

ADO.NET数据

2009-12-23 17:21:31

ADO.NET团队

2009-12-31 14:28:09

ADO.NET参数

2009-11-11 16:37:50

ADO.NET新增特性

2009-11-11 12:49:29

ADO.NET框架

2009-12-23 16:05:47

ADO.NET错误

2009-12-30 14:59:42

ADO.NET数据集

2009-08-20 18:44:54

C#和ADO.NET

2009-12-24 11:19:07

ADO.NET的架构
点赞
收藏

51CTO技术栈公众号