亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

數據庫設計優化經驗談(轉載)

2024-07-21 02:49:17
字體:
來源:轉載
供稿:網友
數據庫設計優化經驗談(轉載)

  慎用游標(Cursor)  游標提供了對特定集合中逐行掃描的手段,一般使用游標來逐行遍歷數據,根據取出數據條件的不同進行不同的操作。而對于多表和大表中定義的游標(大的數據集合)循環很容易使程序進入一個漫長的等待甚至死機,筆者在某市“住房公積金管理系統”進行日終賬戶滾積數計息處理時,對一個10萬個賬戶的游標處理時導致程序進入了一個無限期的等待(后經測算需48小時才能完成)(硬件環境:Alpha/4000 128MB RAM ,SCO Unix ,Sybase 11.0)。經修改程序并改用UPDATE語句后,該處理過程得以在20分鐘之內完成。示例如下:  Declare Mycursor cursor for select count—no from COUNT  Open Mycursor  Fetch Mycursor into @vcount—no  While (@@sqlstatus=0)  Begin  If @vcount—no=&PRime; ′ 條件1操作1  If @vcount—no=′ ′ 條件2操作2...  Fetch Mycursor into @vcount—no  End    ...  改為  Update COUNT set 操作1 for 條件1  Update COUNT set 操作2 for 條件2...  在某些必須使用游標的場合,可考慮將符合條件的數據行轉入臨時表中,再對臨時表定義游標進行操作,這樣,可使性能得到明顯提高。筆者在某地市“電信收費系統”數據庫后臺程序設計中,對一個表(3萬行中符合條件的30多行數據)進行游標操作(硬件環境:PC服務器,PⅡ266 64MB RAM ,Windows NT4.0 MS SQL Server 6.5)?! ∈纠缦拢篊reate #tmp /* 定義臨時表 */    ( 字段1     字段2      ... )  Insert into #tmp select * from TOTAL where 條件  Declare Mycursor cursor for select * from #tmp /*對臨時表定義游標*/    ...  索引(Index)的使用技巧  創建索引一般有兩個目的:維護被索引列的惟一性和提供快速訪問表中數據的策略。大型數據庫有兩種索引,即簇索引和非簇索引,一個沒有簇索引的表是按堆結構存儲數據,所有的數據均添加在表的尾部;而建立了簇索引的表,其數據在物理上會按照簇索引鍵的順序存儲,一個表只允許有一個簇索引,因此,根據B樹結構,可以理解添加任何一種索引均能提高按索引列查詢的速度,但與此同時會降低插入、更新、刪除操作的性能,尤其是當填充因子(Fill Factor)較大時。所以對索引較多的表進行頻繁的插入、更新、刪除操作時,建表和索引時應設置較小的填充因子,以便在各數據頁中留下較多的自由空間,減少頁分割及重新組織的工作。  數據的一致性和完整性  為了保證數據庫的一致性和完整性,設計人員往往會設計過多的表間關聯(Relation),盡可能地降低數據冗余。表間關聯是一種強制性措施,建立后,對父表(Parent Table)和子表(Child Table)的插入、更新、刪除操作均要占用系統的開銷,另外,最好不要用Identify 屬性字段作為主鍵與子表關聯。如果數據冗余低,數據的完整性容易得到保證,但增加了表間連接查詢的操作。為了提高系統的響應時間,合理的數據冗余也是必要的。使用規則(Rule)和約束(Check)來防止系統操作人員誤輸入造成數據的錯誤是,設計人員的另一種常用手段,但是,不必要的規則和約束也會占用系統的不必要開銷,需要注意的是,約束對數據的有效性驗證要比規則快。所有這些,設計人員在設計階段應根據系統操作的類型、頻度加以均衡考慮。  事務的陷阱  事務是在一次性完成的一組操作。雖然這些操作是單個的操作,SQL Server能夠保證這組操作要么全部都完成,要么一點兒都不做。正是大型數據庫的這一特性,使得數據的完整性得到了極大的保證?! ”娝苤?,SQL Server為每個獨立的SQL語句都提供了隱含的事務控制,使得每個DML的數據操作得以完整提交或回滾,但是SQL Server還提供了顯式事務控制語句,如:  BEGIN TRANSACTION 開始一個事務  COMMIT TRANSACTION 提交一個事務  ROLLBACK TRANSACTION 回滾一個事務  事務可以嵌套,可以通過全局變量@@trancount檢索到連接的事務處理嵌套層次。要特別注意的是,每個顯示或隱含的事物開始都使得該變量加1,每個事務的提交使該變量減1,每個事務的回滾都會使得該變量置0,而只有當該變量為0時的事務提交(最后一個提交語句時),才把物理數據寫入磁盤。  數據類型的選擇  數據類型的合理選擇對于數據庫的性能和操作具有很大的影響,有關這方面的書籍也有不少的闡述,筆者這里主要介紹幾點經驗:  1. Identify字段不要作為表的主鍵與其它表關聯,這將會影響到該表的數據遷移?! ?. Text 和Image字段屬指針型數據,主要用來存放二進制大型對象(BLOB)。這類數據的操作相比其它數據類型較慢,因此要避開使用?! ?. 日期型字段的優點是有眾多的日期函數支持,因此,在日期的大小比較、加減操作上非常簡單。但是,在按照日期作為條件的查詢操作也要用函數,相比其它數據類型速度上就慢許多,因為用函數作為查詢的條件時,服務器無法用先進的性能策略來優化查詢而只能進行表掃描遍歷每行。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品一区二区av影院萌芽| 欧美激情在线有限公司| 欧美在线视频在线播放完整版免费观看| 欧美成人免费在线视频| 亚洲国产成人91精品| 亚洲在线视频观看| 欧美人与物videos| 亚洲视频第一页| 亚洲欧美色图片| 欧美激情啊啊啊| 久久久这里只有精品视频| 欧美日韩国产在线播放| 亚洲自拍中文字幕| 2019中文字幕免费视频| 亚洲免费影视第一页| 亚洲国产成人精品久久久国产成人一区| 国产亚洲精品久久久久久| 精品中文字幕乱| 久久久国产一区二区| 久久亚洲国产精品| 97在线看福利| 欧美日韩精品在线播放| 欧美精品激情blacked18| 日日噜噜噜夜夜爽亚洲精品| 欧美激情视频网站| 日韩av在线免费播放| 国产91精品视频在线观看| 国产丝袜一区视频在线观看| 91九色国产视频| 国产91对白在线播放| 久久精品国产96久久久香蕉| 久久久久久久久网站| 97人人爽人人喊人人模波多| 国产欧美日韩免费看aⅴ视频| 久久这里只有精品99| 中文综合在线观看| 亚洲成人教育av| 在线成人激情黄色| 91精品久久久久久久久久另类| 亚洲新声在线观看| 日韩理论片久久| 欧美激情国产日韩精品一区18| 欧美在线视频网| 国产伊人精品在线| 国产专区欧美专区| 92国产精品视频| 97精品伊人久久久大香线蕉| 亚洲视频在线观看视频| 日韩中文在线观看| 久久精品视频在线观看| 欧美激情免费观看| 国产精品精品视频一区二区三区| 亚洲伊人成综合成人网| 91色视频在线导航| 久久久99免费视频| 日本亚洲精品在线观看| 俺去了亚洲欧美日韩| 亚洲性视频网址| 欧美日韩爱爱视频| 亚洲国产91色在线| 亚洲精品国产精品国自产在线| 亚洲午夜精品久久久久久久久久久久| 97精品免费视频| 成人夜晚看av| 成人久久18免费网站图片| 一区二区三区日韩在线| 亚洲男人天堂2019| 91精品国产91久久久久久吃药| 国产精品r级在线| 亚洲女人天堂av| 91精品视频在线播放| 成人激情免费在线| 国产小视频国产精品| 在线观看日韩av| 亚洲欧美变态国产另类| 国产精品美女主播在线观看纯欲| 欧美日韩国产激情| 精品中文字幕在线观看| 91精品91久久久久久| 欧美又大粗又爽又黄大片视频| 亚洲伊人第一页| 深夜精品寂寞黄网站在线观看| 欧美亚洲激情视频| 69久久夜色精品国产69| 久99久在线视频| 亚洲va国产va天堂va久久| 久久影院免费观看| 欧美性猛交xxxx久久久| 亚洲女人天堂av| 欧美精品一区二区免费| 97热在线精品视频在线观看| 国产精品久久久久久超碰| 欧美一级淫片aaaaaaa视频| 欧美日韩亚洲一区二区三区| 亚洲精品视频二区| 国产精品午夜视频| 国产精品久久久久久中文字| 久久久久久成人| 91网在线免费观看| 国产91av在线| 欧美精品18videos性欧美| 欧美日韩亚洲精品内裤| 中文字幕日韩有码| 九九热最新视频//这里只有精品| 色综合久久精品亚洲国产| 91福利视频在线观看| 日韩中文字幕视频在线观看| 欧美伊久线香蕉线新在线| 久久99久久99精品免观看粉嫩| 欧美日韩国产精品一区二区不卡中文| 91理论片午午论夜理片久久| 日本成人精品在线| 国产精品爽黄69| 久久久久久12| 国产精品久久久久久网站| 国产成人综合一区二区三区| 国产精品99蜜臀久久不卡二区| 久久久亚洲福利精品午夜| 国产欧美久久久久久| 川上优av一区二区线观看| 欧美激情视频网站| 国产不卡av在线| 在线观看国产精品91| 国产欧美日韩精品在线观看| 欧美床上激情在线观看| 国产精品久久久久久五月尺| 91精品国产91久久久| 久久久99免费视频| 国产精品狼人色视频一区| 中文字幕日韩精品有码视频| 26uuu日韩精品一区二区| 97国产一区二区精品久久呦| 姬川优奈aav一区二区| 欧美精品一区在线播放| 国产69精品99久久久久久宅男| 欧美国产极速在线| 国产精品国语对白| 国产高清在线不卡| 俺去啦;欧美日韩| 中文字幕成人精品久久不卡| 国内精品中文字幕| 久久精品视频亚洲| 欧美一级电影免费在线观看| 亚洲免费视频观看| 日韩av成人在线观看| 91欧美精品成人综合在线观看| 午夜欧美不卡精品aaaaa| 欧美激情亚洲综合一区| 黑人与娇小精品av专区| 久久久之久亚州精品露出| 亚洲欧美在线磁力| 欧美激情18p| 亚洲最新av网址| 亚洲精品视频久久| 欧美性受xxxx白人性爽| 色偷偷9999www| 国产一区二区黑人欧美xxxx| 日韩高清av一区二区三区| 另类天堂视频在线观看| 日韩中文视频免费在线观看| 97国产精品视频| 97精品国产91久久久久久| 欧美成人中文字幕| 成人性生交xxxxx网站|