設計數據庫時字段類型和長度建議


為什么要合理的設計數據庫字段?

一個是降低物理上的存儲空間,一個是提高數據庫的處理速度,還有一個附帶功能是能校驗數據是否合法。

 

對於任何字段長度都不應該過於小氣,否則未知的變化會造成前后台都要修改   
                      
1、對於開關型字段建議number(1,0) 而不是varchar2(1),避免用戶錯誤保存Y/N,而不是1/0,這樣可能會引入大小寫問題 
                                    
2、對於數據字典編碼字段,不要小氣的確定為3位,最好統一為32位 
經驗證明,有時受從其它系統數據接入的影響,由於沒有對照項,會直接保存原始值,而原始值一般都5-10位 
統一為32位的好處是,可以考慮利用GUID來生成數據字典編碼,這樣在數據合並時非常有優勢. 
                            
3、對於一般性錄入字段,如:編號,車號,訂單號,不要為了一時的"絕對"而設置確定的長度,最好統一成較優的長度,如32位!   
     如:車號最早是6位,沒多久就改成了7位!   
                                      
4、對於類似名稱的字段: 如姓名,單位名稱, 項目名稱等,最好再大一些,設成60位!   
                
5、對於備注類型的字段,一般內容在30個漢字左右,所以推薦設置為100   
                
6、對於長文本的字段,一般內容在200個漢字左右,推薦設置為1000   
                      
7、對保存SQL語句的字段(特殊情況,如配置傳輸條件等),至少要設置為2000,最大是4000   
                                        
8、對於數字字段,除非精度要求,統一為number是個較好的選擇 (如果需要,請盡量提前考慮好精度可能的變化)
number默認精度為15位(整數位數+小數位數=15位,小數點位置任意),其它大數值也可以保存,但是采用的是科學計數法,有精度損失   
     用number,不指定精度的最大的好處是不限制數值的精度和范圍   
      如果指定number(2,1),則存入的數值范圍在-9.9 至 9.9之間,如果用戶提出精度調整為2位,則需要修改數據庫和程序!   
                              
9、對於日期型的就沒有什么說法了  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM