數(shù)據(jù)庫在企業(yè)網(wǎng)站中起著不可忽視的作用,連接著網(wǎng)站的前臺和后臺,起了一個(gè)橋梁作用;同時(shí),絕大多數(shù)網(wǎng)站的數(shù)據(jù)都存放在數(shù)據(jù)庫里,這時(shí)的數(shù)據(jù)庫又起了一個(gè)儲存數(shù)據(jù)的作用。當(dāng)訪客打開網(wǎng)頁時(shí),發(fā)送請求在數(shù)據(jù)庫里直接調(diào)用對應(yīng)的數(shù)據(jù),顯示在瀏覽器上。
1. 我們先看一下,設(shè)計(jì)一個(gè)企業(yè)網(wǎng)站一般用到什么數(shù)據(jù)庫?
一般用開源的Mysql數(shù)據(jù)庫,但有些網(wǎng)站更傾向于SQL Server數(shù)據(jù)庫。如果數(shù)據(jù)量不大,也可以用Access數(shù)據(jù)庫,部署的時(shí)候還方便。
2. 如何構(gòu)思企業(yè)網(wǎng)站后臺數(shù)據(jù)庫設(shè)計(jì)?
先確定你要設(shè)計(jì)的網(wǎng)站功能后, 再仔細(xì)分析各個(gè)功能模塊要保存的數(shù)據(jù)和數(shù)據(jù)格式. 就可以進(jìn)行后臺數(shù)據(jù)庫的設(shè)計(jì)了。
3. 如何設(shè)計(jì)數(shù)據(jù)表?
好的數(shù)據(jù)結(jié)構(gòu)會(huì)影響速度。好的數(shù)據(jù)庫表設(shè)計(jì)會(huì)影響數(shù)據(jù)庫操作效率。特別是數(shù)據(jù)多的時(shí)候,如果表的結(jié)構(gòu)不好的話操作的時(shí)候條件(where后的內(nèi)容)會(huì)變的非常復(fù)雜。
SQL是關(guān)系數(shù)據(jù)庫中用到的一種語言。所以,為了簡化SQL,表的關(guān)系(內(nèi)部和外部)要盡量設(shè)計(jì)的合理。
建表可以參照的步驟:
1)找出那個(gè)表要描述的東西;
2)列出你想通過這個(gè)表得到的相關(guān)信息的列表;
3)通過上面的信息列表,將信息劃分成一塊塊小的部分,通過此小塊來建表。
更合理的表設(shè)計(jì)會(huì)給每條記錄加上一個(gè)唯一的識別,就是加上主鍵。
1)將一個(gè)表字段設(shè)為主鍵要求在表創(chuàng)建的時(shí)候就進(jìn)行設(shè)置。
2) 一個(gè)表里被設(shè)為主鍵的字段的值必須是唯一的,也就是說如果一個(gè)字段被設(shè)為主鍵,這個(gè)表所有的數(shù)據(jù)列表里這個(gè)字段的值不可能有重復(fù)的。
3) 被設(shè)為主鍵的字段不能插入空值。
4) 被設(shè)為主鍵的字段的值是不能更改的。
5) 如果字段被設(shè)為是自增長的,主鍵只能設(shè)置一個(gè)且它必須是主鍵。如果表中沒有自增長的字段,則可以設(shè)多個(gè)字段為主鍵.
6) 主鍵最好是一個(gè)和表里數(shù)據(jù)無關(guān)的值。比如說另建一個(gè)字段:id; 而不要設(shè)在:name 等這些字段上。
兩個(gè)表之間數(shù)據(jù)的關(guān)系有三種:
1)一對一;兩個(gè)表里數(shù)據(jù)唯一對應(yīng);
2)一對多;表A在表B里對應(yīng)多條數(shù)據(jù),但表B里的一條數(shù)據(jù)絕對只對就A中的一條數(shù)據(jù);
3)多對多;A里的一條數(shù)據(jù)對應(yīng)B里的多條數(shù)據(jù),B里一條數(shù)據(jù)也對應(yīng)A中的多條數(shù)據(jù)。
另外,同一個(gè)表里的各字段之間不要有復(fù)雜的依賴關(guān)系,各字段只能和主鍵有依賴關(guān)系,如果非主鍵和非主鍵間有依賴關(guān)系,就要將它們從主表分離出去,放在另一個(gè)表中,并通過外鍵進(jìn)行關(guān)聯(lián)。
織晶網(wǎng)絡(luò)是廣州市一家專業(yè)的網(wǎng)站開發(fā)公司,如果您有設(shè)計(jì)網(wǎng)站的需要,請聯(lián)系 020-23315165 ,我們的工作人員為您服務(wù)。
掃一掃 加微信咨詢