日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库设计新手容易掉进的陷阱(不断更新中)

發(fā)布時間:2023/12/15 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库设计新手容易掉进的陷阱(不断更新中) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

因為要幫同學做個電子商務的網(wǎng)站,不得不把從畢業(yè)起就扔掉的數(shù)據(jù)庫設計實現(xiàn)重新?lián)炝似饋怼?/p>

話說從畢業(yè)到現(xiàn)在十幾年的時間,自己在編程方面沒多少長進,天天寫的也都是些業(yè)務邏輯代碼,想想也真是為自己嘆一口氣。

不管怎么說,以現(xiàn)在這個為契機重新開始吧。

廢話少說直接進入正題,下面列出的都是我走的彎路,在這里匯總整理一下。

(其實都是些很基礎(chǔ)的東西,因為我等于是從0開始直接上手,以賽代練,所以走彎路ms也是不可避免的了。。。)


1.在設計的時候要注意unique屬性的設定。

我犯的錯誤是,沒有意識到空也是會影響到unique屬性的。對于那些有可能為空的字段來說,最好不要設置unique屬性。因為NULL也是一個值,而如果兩條記錄的同一個字段都為NULL的話,就會違反unique的限制導致無法追加數(shù)據(jù)。

2.外鍵的約束名是不可以重復的。

不然會導致Error Code: 1005 Can't create table (errno: 121)錯誤。

關(guān)于這個錯誤,參照這里

3.對于1:N關(guān)系來說,外鍵就可以應付。但對于N:N關(guān)系來說,就要有一個描述對照關(guān)系的表來維護。

? ?具體使用那種,要看數(shù)據(jù)的擴展性需求來定。

4.金額要用DECIMAL類型。

5.對于圖片table來說,有?Alt?字段比較好,用于圖片無法加載時候的文字說明。

6.如果類型指定為INT,那么就是作為4字節(jié)的int來存儲,范圍為-20億~+20億或者0~+40億。

? ?如果指定為INT(4)或者INT4,那么意思是,首先范圍不變,其次當數(shù)字小于9999時,需要在前面補0。

? ?比如1表示為0001,888表示為0888之類。

7.mysql5中varchar(n)中的n表示n個字符,?

? ?一個漢字作為一個字符處理,因此varchar(10)最多能存儲10個漢字。

? ?mysql4中varchar(n)中的n表示n個字節(jié),因此在mysql4中varchar(10)就存不了10個漢字。

總結(jié)

以上是生活随笔為你收集整理的数据库设计新手容易掉进的陷阱(不断更新中)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。