ASP.NET 2.0里轻松获取数据库连接统计数据

资讯 驱动中国 rocket 938 次阅读 0 条评论
分享 Q

ASP.NET 2.0中的SqlConnection多了一个StatisticsEnabled属性和ResetStatistics()、RetrieveStatistics()两个方法,用于获取SQLServer的连接统计数据。

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ page language="C#" %>
<script runat="server">
    void Page_Load(object sender, EventArgs e)
    {
        string connString = "Northwind的连接串";
        SqlConnection conn = new SqlConnection(connString);
        conn.StatisticsEnabled = true;
        conn.ResetStatistics();
        conn.Open();
        SqlCommand cmd = new SqlCommand("SELECT * FROM Orders", conn);
        SqlDataReader reader = cmd.ExecuteReader();
        reader.Close();
        conn.Close();

        Hashtable ht = (Hashtable)conn.RetrieveStatistics();
        foreach (string key in ht.Keys)
        {
            Label1.Text += "Key: " + key + " = " + ht + "<BR />";
        }
    }
</script>
<html>
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="Form1" runat="server" autocomplete="on">
        <asp:Label ID="Label1" Runat="server" Text=""></asp:Label>
    </form>
</body>
</html>

运行后的结果就是SQLServer连接统计数据结果:

Key: NetworkServerTime = 0
Key: BytesReceived = 156913
Key: UnpreparedExecs = 1
Key: SumResultSets = 1
Key: SelectCount = 1
Key: PreparedExecs = 0
Key: ConnectionTime = 30
Key: ExecutionTime = 30
Key: Prepares = 0
Key: BuffersSent = 1
Key: SelectRows = 830
Key: ServerRoundtrips = 1
Key: CursorOpens = 0
Key: Transactions = 0
Key: BytesSent = 48
Key: BuffersReceived = 20
Key: IduRows = 0
Key: IduCount = 0


版权声明:本文由驱动中国整理发布,转载需注明出处与原文链接。如有疑问请联系 editor@qudong.com
本文价值 成为第一个评分的人
登录后为本文打分
网友评论0 条评论
正在回复 的评论取消
评论加载中…
🔐

登录后参与互动

评论、点赞均可赚积分
连续签到、邀请好友也有奖励 🎁

电脑端: 微信扫码登录 微信内: 一键登录

微信扫一扫

打开微信「扫一扫」,分享本文到朋友圈或好友