<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    weidagang2046的專欄

    物格而后知致
    隨筆 - 8, 文章 - 409, 評論 - 101, 引用 - 0
    數據加載中……

    海量數據庫的查詢優化及分頁算法方案

    在以下的文章中,我將以“辦公自動化”系統為例,探討如何在有著1000萬條數據的MS SQL SERVER數據庫中實現快速的數據提取和數據分頁。以下代碼說明了我們實例中數據庫的“紅頭文件”一表的部分數據結構:

    CREATE TABLE [dbo].[TGongwen] (??? --TGongwen是紅頭文件表名

    ?? [Gid] [int] IDENTITY (1, 1) NOT NULL ,
    --本表的id號,也是主鍵

    ?? [title] [varchar] (80) COLLATE Chinese_PRC_CI_AS NULL ,?
    --紅頭文件的標題

    ?? [fariqi] [datetime] NULL ,
    --發布日期

    ?? [neibuYonghu] [varchar] (70) COLLATE Chinese_PRC_CI_AS NULL ,
    --發布用戶

    ?? [reader] [varchar] (900) COLLATE Chinese_PRC_CI_AS NULL ,

    --需要瀏覽的用戶。每個用戶中間用分隔符“,”分開

    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

    GO


      下面,我們來往數據庫中添加1000萬條數據:

    declare @i int

    set @i=1

    while @i<=250000

    begin

    ??? insert into Tgongwen(fariqi,neibuyonghu,reader,title) values('2004-2-5','通信科','通信科,辦公室,王局長,劉局長,張局長,admin,刑偵支隊,特勤支隊,交巡警支隊,經偵支隊,戶政科,治安支隊,外事科','這是最先的25萬條記錄')

    ??? set @i=@i+1

    end

    GO

    ?

    declare @i int

    set @i=1

    while @i<=250000

    begin

    ??? insert into Tgongwen(fariqi,neibuyonghu,reader,title) values('2004-9-16','辦公室','辦公室,通信科,王局長,劉局長,張局長,admin,刑偵支隊,特勤支隊,交巡警支隊,經偵支隊,戶政科,外事科','這是中間的25萬條記錄')

    ??? set @i=@i+1

    end

    GO

    ?

    declare @h int

    set @h=1

    while @h<=100

    begin

    declare @i int

    set @i=2002

    while @i<=2003

    begin

    declare @j int

    ??????? set @j=0

    ??????? while @j<50

    ??????????? begin

    declare @k int

    ??????????? set @k=0

    ??????????? while @k<50

    ??????????? begin

    ??? insert into Tgongwen(fariqi,neibuyonghu,reader,title) values(cast(@i as varchar(4))+'-8-15 3:'+cast(@j as varchar(2))+':'+cast(@j as varchar(2)),'通信科','辦公室,通信科,王局長,劉局長,張局長,admin,刑偵支隊,特勤支隊,交巡警支隊,經偵支隊,戶政科,外事科','這是最后的50萬條記錄')

    ??????????? set @k=@k+1

    ??????????? end

    set @j=@j+1

    ??????? end

    set @i=@i+1

    end

    set @h=@h+1

    end

    GO

    ?

    declare @i int

    set @i=1

    while @i<=9000000

    begin

    ??? insert into Tgongwen(fariqi,neibuyonghu,reader,title) values('2004-5-5','通信科','通信科,辦公室,王局長,劉局長,張局長,admin,刑偵支隊,特勤支隊,交巡警支隊,經偵支隊,戶政科,治安支隊,外事科','這是最后添加的900萬條記錄')

    ??? set @i=@i+1000000

    end

    GO

      通過以上語句,我們創建了25萬條由通信科于2004年2月5日發布的記錄,25萬條由辦公室于2004年9月6日發布的記錄,2002年和2003年各100個2500條相同日期、不同分秒的由通信科發布的記錄(共50萬條),還有由通信科于2004年5月5日發布的900萬條記錄,合計1000萬條。

    from: http://www.pconline.com.cn/pcedu/empolder/db/sql/0501/538958.html

    posted on 2006-10-27 12:17 weidagang2046 閱讀(268) 評論(0)  編輯  收藏 所屬分類: Database

    主站蜘蛛池模板: 久久精品电影免费动漫| 黄色一级视频免费观看| 成人无码视频97免费| 国产在线19禁免费观看| 亚洲欧美一区二区三区日产| 亚洲国产天堂久久久久久| 丁香五月亚洲综合深深爱| 亚洲天天做日日做天天看| 久久久久久免费一区二区三区 | 亚洲人成小说网站色| av无码国产在线看免费网站| 亚洲美女人黄网成人女| 久久成人国产精品免费软件| 91午夜精品亚洲一区二区三区| 91成人免费在线视频| 亚洲中文字幕无码中文字| 免费人成网站在线播放| 黄页网站在线免费观看| 国产亚洲大尺度无码无码专线| 黄色免费在线网站| 亚洲色欲www综合网| 毛片在线免费视频| 亚洲国产老鸭窝一区二区三区| 日韩av无码久久精品免费| 亚洲乱码中文字幕小综合| 妞干网免费视频观看| 黄页网址在线免费观看| 亚洲狠狠婷婷综合久久久久 | j8又粗又长又硬又爽免费视频| 亚洲日韩涩涩成人午夜私人影院| 亚欧国产一级在线免费| 日本久久久久亚洲中字幕| 在线视频免费观看高清| 免费无码午夜福利片69| 亚洲AV永久精品爱情岛论坛| 曰曰鲁夜夜免费播放视频| 在线观看亚洲免费视频| 热久久精品免费视频| 国产精品美女久久久免费 | 亚洲成AV人综合在线观看| 日本成人免费在线|