如果我有一個長度爲7個字符的ID字段,我該如何設置縮放比例和精度?這很混亂。或者說一個電話號碼爲10個字符的字段......那麼S和P是什麼?Precision和Scale如何適用於Oracle的NUMBER數據類型?
1
A
回答
1
對於一個ID,因爲你不應該需要小數,所以你的情況下精度爲7,刻度爲0。對於電話號碼,您可以使用varchar2或類似的東西,在這種情況下,比例和精度不適用。
您提到了ID的「字符」,但我假設它是數字。
關於甲骨文的規模和精度的文檔可以在這裏找到... http://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832
具體做法是:
...你還可以指定精度(總位數)和規模(數的小數點右邊的數字)
請注意,雖然精度和比例是可選的,你甚至可能不需要擔心它們的類似ID。
更多的例子可以在這裏找到... What is the difference between precision and scale?
2
對於一系列的數字,如電話號碼或社會安全號碼,或郵編,或ISBN,考慮你將在它執行哪些操作。
你會來:
- 加在一起,取平均值,以小數點後的數字變化代表他們,相乘等?
- 或者你會檢查長度,將它們分成一個模式,需要保留任何前導零,提取一組字符(前三個,後四個),將它們與正則表達式等進行比較?
如果前者,那麼他們是數字,你應該將它們存儲爲一個整數。如果是後者,那麼它們被限制爲僅由某些字符組成的字符串,並且應該將它們存儲爲具有適當檢查約束的字符串。
我想現在你問的問題是「我的水族箱的水溫應該保持在什麼水平」?答案可能是,根本不會這樣做,因爲你最終會被咬傷。
相關問題
- 1. BigDecimal,precision and scale
- 2. Oracle「Number」數據類型精度
- 3. 減少十進制數據類型precision&scale並避免算術溢出錯誤
- 4. 如何到Oracle SQL數據類型NUMBER映射到Java類型LONG
- 5. 在cfqueryparam中用於Oracle的Number(*,0)數據類型的哪個cfsqltype?
- 6. 哪個.NET數據類型最適合映射NHibernate中的NUMBER Oracle數據類型?
- 7. Oracle Precision
- 8. 適用於存儲ISOYearMonth的Oracle數據類型是什麼?
- 9. jdbc用oracle編寫語句NUMBER類型
- 10. Hive的適當數據類型適用於UDF的DATE和TIMESTAMP
- 11. ORA-01722:在oracle中Number數據類型的無效號碼
- 12. 將varchar數據類型更改爲Oracle中的Number
- 13. 將NUMBER數據類型轉換爲Oracle中的BIT
- 14. Oracle SQL檢查NUMBER數據類型字段的空缺
- 15. 如何檢查oracle中的一個空白的數據類型爲NUMBER的列
- 16. 適用於Windows.System.Colors的MSAccess數據類型
- 17. Oracle NUMBER(20)對應的c#類型?
- 18. Oracle是否爲Number數據類型存儲尾隨零?
- 19. 對於Oracle NUMBER數據類型,LIKE運算符與BETWEEN..AND運算符
- 20. Oracle NUMBER數據類型中的精度和範圍意味着什麼
- 21. 將LONG數據類型列分配到NUMBER數據類型列
- 22. 如何將oracle數據類型映射到java數據類型?
- 23. 在Doctrine 2中指定小數字段類型時,scale和precision的含義是什麼?
- 24. oracle數據類型
- 25. 適用於SQL Server和Oracle數據庫的應用程序
- 26. 用於在oracle數據庫中存儲經度和緯度的數據類型
- 27. 如何從一列處理多幣種(Precision和Scale),在SQL查詢
- 28. 什麼是適用於HIVE的nvarchar,MYSQL數據庫的適當數據類型?
- 29. 轉發類型如何適用於IoC?
- 30. Oracle數字數據類型
您是否假設電話號碼會包含非數字字符或不同國家/地區的可變長度數字? – JohnOsborne