-
decimal和float的選擇:
1、精確數控用decimal;
2、非精確優先選擇float(由于float的存儲空間開銷一般比decimal?。?/p>
decimal列的聲明語法是decimal(m,d)。
在mysql?5.1中,參數的取值范圍:
?1、M是數字的最大數(精度)。其范圍為1~65(在較舊的MySQL版本中,允許的范圍是1~254)。?
2、D是小數點右側數字的數目(標度)。其范圍是0~30,但不得超過M。
查看全部 -
char和varchar的選擇:
1、數據字段長度一樣(比如手機號碼、證件號碼)考慮用char否則用varchar;
2、數據長度小于50字節用char(如果改列很少用,則基于節省空間和減少I/O 的考慮,還是用varchar)
3、避免定于大于50字節的char類型;
查看全部 -
字段類型的選擇原則:(數據類型影響數據存儲空間和數據查詢性能)
1、優先級:數字類型>時間/二進制類型>字符類型(同樣的數據字符處理速度比數字慢許多);
2、同級優先級選存儲空間小的(數據處理以頁為單位(SQLServer一頁8k,MySQL16k頁),列的長度越小越,存的數據越多有利于性能的提升);
查看全部 -
表及字段的命名規則:
1、可讀性原則(比如:駝峰式命名);
2、表意性原則(語義化);
3、長名原則(避免縮寫防歧義)。
查看全部 -
MySQL常用的存儲引擎:
常用:Innodb;
日志:Archive;
集群:Ndb cluster?
查看全部 -
數據庫管理系統選型:
1、成本:商業:Oracle、SQLServer(成本高按核數算)PK開源:MySQL、PgSQL(免費,符合社區規范即可)
2、性能:
(1)Oracle適合大的事務操作;
(2)SQLServer微軟的數據庫管理軟件,只支持在windows上運行;
3、語言:
(1).net和SQLServer配合的比較好;
(2)Java、Php用Oracle、MySQL、PgSQL比較好;
4、應用場景:
(1)商業數據庫適合企業級項目,oracle更加安全,SQLServer更合小的企業級系統比如ERP系統;
(2)開源數據庫適合互聯網項目;
查看全部 -
物理設計:(目的:建立數據庫的庫表結構)
1、選擇合適的數據庫管理系統(Oracle、MySQL、SQLServer、PgSQL),選擇時需考慮實用性和成本;
2、定義數據庫、表及字段的命名規范(便于在沒有數據庫字典的情況下也能理解七含義,先定規范在建庫表、受DBMS限制)
3、根據所選的DBMS選擇合適的字段類型(比如:字符串用varchar、char還是text類型,考慮適用、高效)
4、反范式化設計(比如:為了提高查詢效率,增加冗余字段以達到以空間換時間的目的)
查看全部 -
BC范式要求數據庫中不能存在任何字段對應任一候選關鍵字段的傳遞函數依賴
查看全部 -
第三范式要求各列無傳遞式的依賴關系(分類描述依賴分類)
查看全部 -
第二范式要求表為單關鍵字表不可再拆分
查看全部 -
第一范式:
第一范式要求數據庫中的表都是二維表;
查看全部 -
數據操作異常:
1、插入異常
2、更新異常
3、刪除異常
一個數據庫存在插入異常必定存在更新和刪除異常;
查看全部 -
數據庫設計的范式(規范):
第一、第二、第三、BC范式、第四、第五范式;
查看全部 -
ER圖例說明
屬性加下劃線表示主碼或主鍵;
查看全部 -
ER圖:
關系(表):一個關系對應通常所說的一張表
元組(行):表中的一行即為一個元組;
屬性(列):表中的一列即為一個屬性;每個屬性有一個名稱,成為屬性名;
候選碼(唯一索引 ):表中的某個屬性組,他可以唯一確定一個元組;
主碼(主鍵):一個關系有多個候選碼,選定其中一個為主碼;
域(取值范圍):屬性的取值范圍;
分量(值):元組中的一個屬性值。
查看全部
舉報