五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > 8.5 數(shù)據(jù)庫設(shè)計(jì)

8.5 數(shù)據(jù)庫設(shè)計(jì)

文章來源:365jz.com     點(diǎn)擊數(shù):408    更新時(shí)間:2009-09-12 17:11   參與評(píng)論

8.5 數(shù)據(jù)庫設(shè)計(jì)

本案例的一個(gè)主線元素即圖片,圍繞圖片,他的上級(jí)元素應(yīng)該是一個(gè)分類元素,而這個(gè)分類不同于以往的分類,因?yàn)檫@個(gè)分類是以用戶為單位的,也就是說,用戶可以擁有其“相冊(cè)”,這個(gè)相冊(cè)即是圖片的分類。因此分類也有一個(gè)上級(jí)元素,即用戶。

另外,我們還在這里設(shè)計(jì)了標(biāo)簽(又稱Tag),一個(gè)圖片可以擁有多個(gè)標(biāo)簽,一個(gè)標(biāo)簽也可能對(duì)應(yīng)了多個(gè)圖片,這是一個(gè)多對(duì)多的關(guān)系。

在數(shù)據(jù)庫中,多對(duì)多關(guān)系通常是這樣處理的:多對(duì)多關(guān)系的兩個(gè)元素,各用一個(gè)表存放,另外還有一個(gè)“關(guān)系表”,用來存放二者的對(duì)應(yīng)關(guān)系。舉例來說,本案例的標(biāo)簽部分可以這樣設(shè)計(jì),除圖片表外,加入一個(gè)標(biāo)簽表,在這里存放標(biāo)簽的唯一編號(hào),另外存放具體的標(biāo)簽名稱,在這二者之外,再加入關(guān)系表Photo2Tag,這個(gè)關(guān)系表有三個(gè)字段,第一是關(guān)系的唯一編號(hào)作為主鍵,另外兩個(gè)字段分別是圖片的唯一編號(hào)和標(biāo)簽的唯一編號(hào),當(dāng)某個(gè)圖片有某個(gè)標(biāo)簽時(shí),就在此表中加入一條記錄。這樣做的好處是關(guān)系分明,符合數(shù)據(jù)庫設(shè)計(jì)的范式,缺點(diǎn)在于程序編制麻煩,當(dāng)你取出圖片的標(biāo)簽時(shí),需要同時(shí)打開關(guān)系表和標(biāo)簽表,在關(guān)系表中查詢出圖片對(duì)應(yīng)的所有標(biāo)簽的編號(hào),再在標(biāo)簽表中查出這些編號(hào)對(duì)應(yīng)的標(biāo)簽名稱。

在本案例中,不采用這種方法,而是采用一種折衷的辦法,即,有標(biāo)簽表,但是沒有關(guān)系表,我們?cè)趫D片表中新增一個(gè)字段,放入所有的標(biāo)簽名稱。這樣做不符合數(shù)據(jù)庫范式,但是可以在程序編寫和查詢效率方面獲得一些提高。

文本框: 擴(kuò)展閱讀:什么是數(shù)據(jù)庫設(shè)計(jì)的范式
設(shè)計(jì)范式(范式,數(shù)據(jù)庫設(shè)計(jì)范式,數(shù)據(jù)庫的設(shè)計(jì)范式)是符合某一種級(jí)別的關(guān)系模式的集合。構(gòu)造數(shù)據(jù)庫必須遵循一定的規(guī)則。在關(guān)系數(shù)據(jù)庫中,這種規(guī)則就是范式。關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求,即滿足不同的范式。目前關(guān)系數(shù)據(jù)庫有六種范式:第一范式(1NF)到第六范式(6NF)。滿足最低要求的范式是第一范式(1NF)。在第一范式的基礎(chǔ)上進(jìn)一步滿足更多要求的稱為第二范式(2NF),其余范式以次類推。一般說來,數(shù)據(jù)庫只需滿足第三范式(3NF)就行了。

除此之外,我希望告訴你的是,由于在本章的用戶模塊中設(shè)計(jì)了一個(gè)用戶找回密碼的功能,即當(dāng)用戶忘記密碼時(shí),可以在系統(tǒng)中輸入其注冊(cè)時(shí)的Email,系統(tǒng)將發(fā)送一封信件給該用戶,用戶點(diǎn)擊信件中的鏈接即可重設(shè)密碼,在這個(gè)過程中涉及一個(gè)密鑰認(rèn)證的環(huán)節(jié),因此我們?yōu)檫@里設(shè)計(jì)了一個(gè)表FindPass。

本章詳細(xì)的數(shù)據(jù)庫設(shè)計(jì)如下:

數(shù)據(jù)表Album的結(jié)構(gòu)如表8.1所示:

表8.1

字段

類型

描述

可否為空

默認(rèn)值

備注

AlbumID

自動(dòng)編號(hào)

相冊(cè)編號(hào)

主鍵

UserID

數(shù)字

所屬用戶編號(hào)

AlbumName

文本

相冊(cè)名稱

AlbumCover

文本

相冊(cè)封面

數(shù)據(jù)表Photo的結(jié)構(gòu)如表8.2所示:

表8.2

字段

類型

描述

可否為空

默認(rèn)值

備注

PhotoID

自動(dòng)編號(hào)

圖片編號(hào)

主鍵

UserID

數(shù)字

所屬用戶編號(hào)

AlbumID

數(shù)字

所屬相冊(cè)編號(hào)

0

PhotoName

文本

圖片名稱

PhotoContent

備注

圖片介紹

PhotoSourceUrl

文本

圖片文件地址

PhotoTags

文本

圖片Tag

PhotoSize

數(shù)字

圖片文件大小

0

PhotoPermission

文本

圖片瀏覽權(quán)限

PhotoClick

數(shù)字

圖片點(diǎn)擊量

0

PhotoVoteScore

數(shù)字

圖片評(píng)分得分

3

PhotoVoteTotal

數(shù)字

圖片評(píng)分人數(shù)

1

PhotoAddTime

日期/時(shí)間

圖片添加時(shí)間

Now()

數(shù)據(jù)表ShareUser結(jié)構(gòu)如表8.3所示:

表8.3

字段

類型

描述

可否為空

默認(rèn)值

備注

UserID

自動(dòng)編號(hào)

用戶編號(hào)

主鍵

UserEmail

文本

用戶Email

UserNickName

文本

用戶昵稱

UserPassword

文本

用戶密碼

UserAddTime

日期/時(shí)間

用戶注冊(cè)時(shí)間

Now()

UserHead

文本

用戶頭像

數(shù)據(jù)表Tag結(jié)構(gòu)如表8.4:

表8.4

字段

類型

描述

可否為空

默認(rèn)值

備注

TagID

自動(dòng)編號(hào)

Tag編號(hào)

主鍵

TagName

文本

Tag

TagCount

數(shù)字

Tag使用次數(shù)

0

數(shù)據(jù)表FindPass結(jié)構(gòu)如表8.5:

表8.5

字段

類型

描述

可否為空

默認(rèn)值

備注

FPID

自動(dòng)編號(hào)

編號(hào)

主鍵

UserID

數(shù)字

對(duì)應(yīng)用戶編號(hào)

PrivateKey

文本

密鑰

FindAddTime

日期/時(shí)間

申請(qǐng)時(shí)間

如對(duì)本文有疑問,請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答??! 點(diǎn)擊進(jìn)入論壇

發(fā)表評(píng)論 (408人查看0條評(píng)論)
請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
昵稱:
最新評(píng)論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)