伊人99re_av日韩成人_91高潮精品免费porn_色狠狠色婷婷丁香五月_免费看的av_91亚色网站

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁 > IT資訊 > 數(shù)據(jù)庫 > 【中培課堂】詳解設(shè)計(jì)數(shù)據(jù)庫時(shí)應(yīng)該注意的相關(guān)問題

【中培課堂】詳解設(shè)計(jì)數(shù)據(jù)庫時(shí)應(yīng)該注意的相關(guān)問題

2017-01-19 14:18:46 | 來源:中培企業(yè)IT培訓(xùn)網(wǎng)

數(shù)據(jù)庫作為目前收集、存儲(chǔ)數(shù)據(jù)信息的重要平臺(tái),在信息爆炸的當(dāng)今時(shí)代,其作用和價(jià)值也日益凸顯。那么設(shè)計(jì)數(shù)據(jù)庫時(shí)應(yīng)該注意哪些問題呢,中培偉業(yè)“大數(shù)據(jù)”專家鐘老師在這里就事務(wù)型數(shù)據(jù)庫設(shè)計(jì)過程中應(yīng)注意的問題進(jìn)行了解答。

1.是否使用聯(lián)合主鍵?

采用聯(lián)合主鍵是比較理想的選擇。因?yàn)檫@樣會(huì)降低索引的效率,聯(lián)合主鍵一般都要用到至少一個(gè)業(yè)務(wù)字段,往往是字符串型的,而且理論上多字段的索引比單字段的索引要慢些??瓷先ニ坪跻膊荒敲辞逅?

在實(shí)際的設(shè)計(jì)中,我盡量避免使用聯(lián)合主鍵,有些時(shí)候“不得不”使用聯(lián)合主鍵。

2.PK采用無意義的字段(邏輯主鍵)還是有意義的字段(業(yè)務(wù)主鍵)?

“邏輯主鍵”應(yīng)該,理由是這樣設(shè)計(jì)出的數(shù)據(jù)庫模型結(jié)構(gòu)清晰、關(guān)系脈絡(luò)清楚,往往更符合“第三范式”(雖然不是故意的,呵呵)。而且更容易避開“聯(lián)合主鍵”,而且可以使用索引效率高的字段類型,比如intlongnumber。缺點(diǎn)是用無意義的字段建立表間的關(guān)系,使跨表查詢?cè)龆啵氏陆怠#軣o處不在,前面剛說完可以提高效率,這里馬上又降低效率)?!皹I(yè)務(wù)主鍵”可以提升查詢編碼的簡(jiǎn)潔度和效率。

總體來說“邏輯主鍵”比“業(yè)務(wù)主鍵”執(zhí)行效率低,但不會(huì)低到無法滿足需求。采用“邏輯主鍵”比采用“業(yè)務(wù)主鍵”更利于數(shù)據(jù)庫模型的結(jié)構(gòu)、關(guān)系清晰,也更便于維護(hù)。

對(duì)于分析型數(shù)據(jù)庫,如數(shù)據(jù)倉庫,千萬不要這樣做。

3.不要使用多對(duì)多關(guān)系?

少使用多對(duì)多關(guān)系。這個(gè)問題其實(shí)不是數(shù)據(jù)庫設(shè)計(jì)的問題了,在數(shù)據(jù)庫設(shè)計(jì)中,多對(duì)多關(guān)系也僅僅存在于邏輯模型(E-R)階段,物理模型不在有多對(duì)多關(guān)系,實(shí)際數(shù)據(jù)庫中也不會(huì)有“多對(duì)多”關(guān)系。這是使用ORM時(shí)的問題,比如使用Hibernate,多對(duì)多關(guān)系有時(shí)會(huì)使編碼看起來靈活一些,代價(jià)是效率的明顯降低。

設(shè)計(jì)時(shí)基本不考慮多對(duì)多關(guān)系,但編碼時(shí)總會(huì)有小組成員使用一些多對(duì)多關(guān)系,自己建立多對(duì)多的ORM,使自己編碼方便些,用在數(shù)據(jù)量小的地方,影響不大。大數(shù)據(jù)量,則“禁止使用”。

4.為每個(gè)表增加一個(gè)state字段?

設(shè)計(jì)時(shí)給每個(gè)表設(shè)一個(gè)state字段,取值,默認(rèn)值為,具體業(yè)務(wù)意義或操作上的意義可以自定義??梢宰鳛橐粋€(gè)狀態(tài)控制字段,如查詢、更新、刪除條件,單據(jù)是否有效(業(yè)務(wù)單據(jù)對(duì)應(yīng)的表會(huì)有業(yè)務(wù)意義上的“有無效”或“狀態(tài)”字段,這種情況下,我還是會(huì)再加一個(gè)state字段),甚至僅僅是控制一條數(shù)據(jù)是否“有效”(有效的意義你自己定)。在數(shù)據(jù)遷移(如轉(zhuǎn)入分析用的數(shù)據(jù)庫)時(shí)也可能會(huì)發(fā)揮作用。

5.為每個(gè)表設(shè)置一些備用字段?

沒辦法,我總是設(shè)計(jì)不出“完美”的數(shù)據(jù)表,給每個(gè)表加幾個(gè)備用字段(我一般用字符串型,隨你)可以應(yīng)付“不時(shí)之需”,尤其是需要長期維護(hù)的、業(yè)務(wù)可能有臨時(shí)性變動(dòng)的系統(tǒng)。

6.盡量不要在一個(gè)表中存入其關(guān)聯(lián)表的字段?

建議不存!這樣做確實(shí)可以提高查詢效率,但在一個(gè)有很多表,并且關(guān)聯(lián)表多的情況下,很難保持?jǐn)?shù)據(jù)的一致性!數(shù)據(jù)庫結(jié)構(gòu)也比較糟糕。而且不存,也不會(huì)使效率十分低下。

7.不要去直接修改數(shù)據(jù)庫?

這點(diǎn)很重要,當(dāng)需要修改時(shí),應(yīng)該先去修改模型,然后同步物理數(shù)據(jù)庫,尤其是團(tuán)隊(duì)開發(fā),否則要多做更多的事情來搞定,也可能會(huì)引入更多的錯(cuò)誤。

主站蜘蛛池模板: 成人国内毛片免费大战 | 人妻聚色窝窝人体WWW一区 | 亚a∨国av综av涩涩涩 | 6080YYY午夜理论片 | 国产视频一区二区在线观看 | 漂亮人妻洗澡被公强啪啪 | 国产免费艾彩sm调教视频 | 暖暖免费高清日本社区在线观看 | 国语国产精精品国产国语清晰对话 | 久久久久日本精品一区二区三区 | 好大好爽受不了了h | 免费国产小视频 | 黄色一级片中国 | 久久黄色a级片 | 自拍亚洲国产 | gogo全球大胆高清人露出91 | 久久久久久久久888 伊人青青视频 | 欧美一区二区最爽乱淫视频免费看 | 久久久久久一级片 | 伊人一级| 高跟丝袜AV专区 | 免费成人一区 | 人妻无码中文专区久久五月婷 | 野花社区影视在线www官网 | 欧美特殊大毛茸茸bbw | 欧洲精品视频一区二区 | 香蕉97人人乳视频观看 | 日韩人妻无码精品系列 | 欧美不卡一区二区三区四区 | 国产一级二级在线观看 | 中国少妇内射XXXXⅩ | 四虎1515hh丶comblacked | 久草资源视频 | 国产精品久久久久久久久久久久久久久久久久 | 今日av在线 | 无码人妻丰满熟妇区毛片18 | 免费视频亚洲 | 亚洲综合憿情五月丁香五月网 | 777色狠狠一区二区三区 | 成人在线播放 | 久久久久成人精品免费播放 |