好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 數據庫查詢優化(主從表的設計)

數據庫查詢優化(主從表的設計)

熱門標簽:合肥crm外呼系統加盟 城市地圖標志怎么標注 電話機器人怎么看余額 西安電話自動外呼系統 長沙外呼系統平臺 怎么修改高德地圖標注 美國地圖標注軟件下載 硅基電話機器人官網 漯河電銷回撥外呼系統

舉一個例子,我現在有一些新聞信息,它包括這些字段;新聞ID,新聞Name,新聞ShortIntro,新聞Detail,新聞PublishTime。我現在要把它存放在數據庫中,然后從數據庫中將其取出來放在GridView中分頁顯示。

我現在就以一種我所見過的常見的思維方式來一步一步模擬這個實現過程。

第一步:建立新聞數據表

在這一步,很多人都會直接建一張News表,里面包括了上面說的那些字段。

第二步:查詢數據。

寫一個方法,把News表中滿足查詢條件的數據取出來放在DataSet(DataTable)中,作為數據源。

第三步:綁定到GridView。

設置GridView的分頁屬性,將上面查詢得到的數據源綁定到GridView,實現數據在GridView中的分頁顯示。

上面就是我們常見的做法了。

我的做法會是這樣:

第一步:建立新聞數據主-從表

我們在系統開發過程中會發現,其實在一條的完整的數據信息中,其實很多時候,很多列表項并不會用到。我們分析News信息,我們可以初步的把ID,Name,ShortIntro,PublishTime作為主要信息,我們將這些信息集中起來,新建一張表News(ID,Name,ShortIntro,PublishTime),另外一個字段Detail放在另一張從表中,新建一張表NewsDetail(ID,Detail,NewsID)。這樣做有什么好處呢,首先我們降低了表的“重量”。我們將最重要,最常用的信息簡化出來放在一個主表中,這樣在使用過程中,我們只需要從這張住表中獲取我們所需的數據就可以了,而不需要像第一種方法一樣遍歷所有字段,這減少了數據庫查詢的時間,提高了性能。主-從表建立的原則是,將最重要的,最常用的分離出來作為主表,將那些描述性的,內容龐大的作為從表。

第二步:編寫適合的SQL語句。

我們應該為不同的功能實現編寫適合的SQL語句。上面那種方法中,用一個方法查詢出了所有的數據信息,這是滿足所有場合的數據要求的。但是,我們并不需要這么多的數據內容,多余的數據內容耗費了我們大量的時間和空間。我們往往只需要其中的部分內容,比如說主要信息。這也印證了為什么我們上面要建立主-從表。我們在建立了主-從表之后,為滿足各種場合,可以編寫以下幾種方法:GetNews(int? ID, string Name)//從主表中查詢滿足條件的數據,GetNewsDetail(int? ID, string Name)//從主表和從表中查詢滿足條件的數據。第一種方法提供了新聞主要信息,第二種方法提供了全面的信息,這兩種方法基本上就能滿足所有場景且不會帶來過多的數據冗余。這里還要指出一點,有些人喜歡這么寫GetNewsByID(int? ID ),GetNewsByName(string Name),這樣寫是很靈活,很有針對性,但是這樣寫完全沒必要。

第三步:分頁綁定。

上面那種方法是一次性取出所有數據給GridView,讓控件自己去分頁,這樣做方便省事。但是會有幾個問題:

(1)數據量大。因為是一次性取出所有滿足條件的數據,所以數據量比較大,而這些數據是都需要放在內存中的,所以會影響系統性能。而且在初次載入時會有些卡,給人的感覺是系統加載不平順。

(2)我們并不需要這么多數據。為什么我要這么說呢?研究用戶的使用習慣我們會發現,用戶大多數情況下并不會逐頁的去瀏覽數據,用戶關注的往往是前幾頁的前幾條。所以取出來的數據很多時候并沒有被用戶查看。

所以在這里,使用分頁查詢的方式是更加合適的。每次只從數據庫里面查詢一頁數據,這樣系統負載小,頁面載入平順,而且完全能夠滿足用戶的使用要求。有些人會問,你這樣做不是會增加數據庫IO次數,我想說的是,一次性獲取大量冗余數據,并要承擔冗余所帶來的持久影響與這些比理論上增加的IO次數(用戶并不會逐頁查看,也就并不會產生那么多次分頁查詢)要小得多的訪問相比,分頁查詢具有不可否定的優勢。

您可能感興趣的文章:
  • mysql數據庫查詢優化 mysql效率
  • 海量數據庫的查詢優化及分頁算法方案
  • 優化MySQL數據庫中的查詢語句詳解
  • 海量數據庫的查詢優化及分頁算法方案集合1/2
  • 海量數據庫的查詢優化及分頁算法方案集合2/2
  • 數據庫查詢優化之子查詢優化
  • 一次數據庫查詢超時優化問題的實戰記錄

標簽:瀘州 濟源 撫順 商洛 玉溪 吉林 廣西 文山

巨人網絡通訊聲明:本文標題《數據庫查詢優化(主從表的設計)》,本文關鍵詞  數據庫,查詢,優化,主從,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《數據庫查詢優化(主從表的設計)》相關的同類信息!
  • 本頁收集關于數據庫查詢優化(主從表的設計)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 美女被到爽羞羞漫画| 男人皇宫◆亚洲努力打造987| 芭乐视app下载旧版本ios版斗地主 | 一级毛片《杨贵妃》| 亚洲精品欧美在线| 亚洲男男猛男GAYXXX| 狠狠噜天天噜日日噜视频麻豆 | 痴女裤袜ol波多野820结衣| 久久美女视频| 欧美极品第一页| 成人国产精品秘?免费观看动漫 | 丝瓜黄瓜视频在线观看视频| 被几个人强的好爽小说| 韩国色情2024在线观看视频 | a级毛片免费观看在线播放| 尤物国产精品午夜福利视频| 成 人 免费 黄 色 网站无毒下载| 一级做a爰片久久毛片**| 给处女破处的过程| 亚洲狼人精品一区二区三区| 无码人妻久久一区二区三区四区| 全免费a级毛片免费看视频免| 韩国大胸女友在线观看完整版| 胸的样子| 一区二区三区四区影院| 俄罗斯videosex性欧美黑吊| 欧美激情网址| 好男人在线社区WWW免费观看好| 91人妻精品丰满大屁股| 粉嫩的美女视频在线观看| 桃花岛论坛| freehd18在线欧美| 欧美成人乱码视频XXXX| 亚洲精品成A人Ⅴ香蕉片| 放荡的情欲k8经典影院| 高清vodafonewifi| dasd—希岛爱理黑人在线| 国产97色综合久久婷婷软件粉嫩 | 成品大香煮伊在2021一二三| 亚洲w码欧洲s码免费| 日日鲁鲁夜夜爽爽爽狠狠爱视频 |