對於這個表:檢索大小整數值的SQL Server表INFORMATION_SCHEMA.COLUMNS視圖
與此查詢:
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH,
NUMERIC_PRECISION, IS_NULLABLE
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME='PARAMETERS'
ORDER BY TABLE_NAME, ORDINAL_POSITION
我得到這樣的結果:
我該如何檢索整數列的大小?對於PAR_ID
(Lenght = 2)我得到的NUMERIC_PRECISION
一個NUMERIC_PRECISION
5.
的定義是「近似數值數據,精確數字數據,整數數據或貨幣數據的精度。否則,返回NULL」。但爲什麼smallint(2)的值爲5,而float(8)的值爲53?這是什麼意思?
UPDATE:
感謝@Ed_Harper:有長度和精度之間的差異。長度是用於存儲數字的字節數。精度是一個數字中的位數。請參閱:http://goo.gl/EOTyC
謝謝,我現在看到有是長度和精度之間的差異。我會更新我的問題 – waanders
儘管我仍然不知道如何查詢我的數字表列的長度 – waanders
@waanders - 添加了一個示例case語句 –