最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Sql語(yǔ)句與存儲(chǔ)過(guò)程查詢數(shù)據(jù)的性能測(cè)試實(shí)現(xiàn)代碼

 更新時(shí)間:2009年04月25日 02:15:16   作者:  
Sql語(yǔ)句 存儲(chǔ)過(guò)程查 性能測(cè)試對(duì)比代碼。
一.建立數(shù)據(jù)庫(kù)Liezui_Test
ID int 主鍵 自增
Title varchar(100)
ReadNum int
二.向數(shù)據(jù)庫(kù)中插入100萬(wàn)條數(shù)據(jù)
declare @i int
set @i=1
while @i<=500000
begin
insert into Liezui_Test(Title,ReadNum) values('執(zhí)行總數(shù)統(tǒng)計(jì)',@i)
set @i=@i+1
end
GO
declare @i int
set @i=1
while @i<=500000
begin
insert into Liezui_Test(Title,ReadNum) values('毛巾因經(jīng)常處于潮濕狀態(tài)而極易滋生有害細(xì)菌',@i)
set @i=@i+1
end
GO
三.增加SelectByTitle存儲(chǔ)過(guò)程
Create PROCEDURE [dbo].[SelectByTitle]
AS
BEGIN
Select top 10000 * from Liezui_Test where Title Like '%執(zhí)行%'
END
三.開始測(cè)試
首先在頁(yè)面內(nèi)放一個(gè)repeater 用于綁定數(shù)據(jù) 二個(gè)label 用于顯示結(jié)果
測(cè)試場(chǎng)景一 : 不綁定Repeater,只進(jìn)行數(shù)據(jù)庫(kù)源的綁定
代碼如下:
Stopwatch st = new Stopwatch();
st.Start();
Repeater1.DataSource = Jinlong.Data.DBHelper.ReturnDataSet("Select top 10000 * from Liezui_Test where Title Like '%執(zhí)行%'").Tables[0];
st.Stop();
Label1.Text = st.ElapsedMilliseconds.ToString() + "ms";
Stopwatch st2 = new Stopwatch();
st2.Start();
SqlParameter[] para = { };
Repeater1.DataSource = Jinlong.Data.DBHelper.RunProcedure("SelectByTitle", para, "ds");
st2.Stop();
Label2.Text = st2.ElapsedMilliseconds.ToString() + "ms";
結(jié)果如下:
Label1 Label2
52ms 48ms
39ms 46ms
45ms 44ms
43ms 42ms
37ms 40ms
43ms 44ms
結(jié)論:用Sql語(yǔ)句和存儲(chǔ)過(guò)程的速度差不多.
測(cè)試場(chǎng)景二 : 綁定Repeater
代碼如下:
Stopwatch st = new Stopwatch();
st.Start();
Repeater1.DataSource = Jinlong.Data.DBHelper.ReturnDataSet("Select top 10000 * from Liezui_Test where Title Like '%執(zhí)行%'").Tables[0];
Repeater1.DataBind();
st.Stop();
Label1.Text = st.ElapsedMilliseconds.ToString() + "ms";
Stopwatch st2 = new Stopwatch();
st2.Start();
SqlParameter[] para = { };
Repeater1.DataSource = Jinlong.Data.DBHelper.RunProcedure("SelectByTitle", para, "ds");
Repeater1.DataBind();
st2.Stop();
Label2.Text = st2.ElapsedMilliseconds.ToString() + "ms";
結(jié)果如下:
Label1 Label2
161ms 192ms
205ms 191ms
142ms 208ms
153ms 198ms
134ms 209ms
280ms 335ms
結(jié)論:用存儲(chǔ)過(guò)程的速度居然比直接用Sql語(yǔ)句還要慢.

相關(guān)文章

最新評(píng)論

桐柏县| 铜陵市| 历史| 恩平市| 溆浦县| 灌阳县| 嵩明县| 镇江市| 龙岩市| 山阳县| 英吉沙县| 秭归县| 泗阳县| 南部县| 兴城市| 鄂托克旗| 察雅县| 元朗区| 阳原县| 莲花县| 岗巴县| 望城县| 珲春市| 江达县| 南雄市| 富源县| 徐州市| 蓬莱市| 永兴县| 石家庄市| 萨迦县| 永仁县| 英超| 原阳县| 海淀区| 新建县| 安塞县| 沙雅县| 安吉县| 南丰县| 建湖县|