六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

數據庫設計技巧(一)

[摘要]在動態網站的設計中,數據庫設計的重要性不言而喻。如果設計不當,查詢起來就非常吃力,程序的性能也會受到影響。無論你使用的是mySQL或者Oracle數據庫,通過進行正規化的表格設計,可以令你的PHP代...
在動態網站的設計中,數據庫設計的重要性不言而喻。如果設計不當,查詢起來就非常吃力,程序的性能也會受到影響。無
論你使用的是mySQL或者Oracle數據庫,通過進行正規化的表格設計,可以令你的PHP代碼更具可讀性,更容易擴展,從而
也會提升應用的性能。

  簡單說來,正規化就是在表格設計時,消除冗余性和不協調的從屬關系。在本文中,我將通過五個漸進的過程來告訴
你在設計中應該了解的正規化技巧。從而建立一個可行而且
效率高的數據庫。本文也會詳細分析一下可以利用的關系類型。

  這里假定我們要建立一個用戶信息的表格,其中要存儲用戶的名字、公司、公司地址和一些個人的收藏夾或url。在開
始時,你可能定義一個如下的表格結構:

  零狀態形式

  users

  name company company_address url1 url2

  Joe ABC 1 Work Lane abc.com xyz.com

  Jill XYZ 1 Job Street abc.com xyz.com

  由于沒有進行任何的正規化處理,我們將這種形式的表稱為零狀態形式的表。留意其中的url1和url2字段---如果我們
在應用中需要第三個url呢?這樣你就要在表格中多加一列,很明顯,這不是一個好辦法。如果你要創建一個富有擴展性的
系統,你就要考慮使用第一個正規化的形式,并且應用到該表格中。

  第一級正規化形式

  1.消除每個表格中重復的組

  2.為每套相關的數據建立一個獨立的表格

  3.使用一個主鍵來標識每套相關的數據

  以上的表格明顯違反了上面第一條的規定,那么第三條的主鍵又是什么意思呢?很簡單,它只是在每個記錄中加入一
個唯一的、自動增加的整型值。通過這個值,就可以將兩個姓名一樣的記錄區分開來。通過應用第一級正規化形式,我們
得到了以下的表格:

  users

  userId name company company_address url

  1 Joe ABC 1 Work Lane abc.com

  1 Joe ABC 1 Work Lane xyz.com

  2 Jill XYZ 1 Job Street abc.com

  2 Jill XYZ 1 Job Street xyz.com

  現在我們的表格可以說已經處在第一級正規化的形式了,它已經解決了url字段的限制問題,不過這樣的處理后又帶來
了一個新的問題。每次在user表中插入一條記錄的時候,我們都必須重復所有的公司和用戶數據。這樣不僅令數據庫比以
前大了,而且很容易出錯。因此還要經過第二級正規化處理。



主站蜘蛛池模板: 日本高免费观看在线播放 | 亚洲欧美日韩高清一区二区一 | 天天看天天摸天天操 | 亚洲欧美中日韩中文字幕 | 青青草久久 | 午夜在线视频国产 | 视频一区二区三区蜜桃麻豆 | 午夜高清在线 | 欧美香蕉在线 | 午夜资源 | 色综合久久中文字幕综合网 | 亚洲性久久 | 先锋久久| 天堂中文字幕在线 | 日本中文在线 | 人操人视频 | 欧美一区日韩一区中文字幕页 | 日日狠狠 | 日日摸夜夜添夜夜爽免费视频 | 日本不卡免费新一二三区 | 天天干夜夜做 | 午夜视频网站在线观看 | 色青青草原桃花久久综合 | 日本五级床片午夜视频 | 日本欧美一区二区三区 | 亚洲国产艾杏在线观看 | 欧美午夜在线 | 欧美笫一页 | 亚洲码专区 | 日韩 欧美 综合 在线 制服 | 天天操天天干天天拍 | 亚洲33p| 午夜三级理论在线观看视频 | 欧美在线播放一区二区 | 日韩成人毛片高清视频免费看 | 日韩第六页 | 日本高清www视频在线观看 | 日日日日干 | 色就干| 日韩一级高清 | 天堂网传媒 |