首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

跟我學 SQL(八):數值資料類型完整規範、精度與標度、廠商實作差異與移植風險

     編輯:關於SqlServer

SQL-92 數值類型基礎

四大類型中數值型種類最多、約束最複雜、跨平台移植精度損失風險最高。Oracle/SQL Server 同名類型長度常不同,導致資料截斷/數值變更。

移植前必須: 明確掌握兩平台數據定義差異與精度風險。

核心概念:精度與標度

  • Precision (精度): 有效數字總位數
  • Scale (標度): 小數點右側最小有效位數
  • 範例:1234.56 → Precision=6, Scale=2 → NUMERIC(6,2)

精確數值類型

類型語法特性
NUMERICNUMERIC(p,s)精確數值、十進制捨入、總長度=p(+1 若 s>0)、小數位數符合 s
DECIMAL / DECDECIMAL(p,s)精確數值、十進制、總長度=p(+1 若 s>0)、小數位數≥s (上限由廠商定)
INTEGER / INTINTEGER(p)精確整數、二/十進制 (視位元數)、Scale=0、廠商定義最大/最小精度
SMALLINTSMALLINT(p)精確整數、同 INT 位數處理、Scale=0、最大精度≤INT

近似數值類型

類型語法特性
FLOATFLOAT(p)近似數值、指數形式 (如 1.23e-45)、二進制精度、廠商定義最大精度
REALREAL近似數值、二進制精度、最大精度由廠商定、預設精度 < DOUBLE PRECISION
DOUBLE PRECISIONDOUBLE PRECISION近似數值、二進制精度、最大精度由廠商定、預設精度 > REAL

廠商擴充類型

各廠商在標準基礎上建立實際類型:同名類型 (INT, REAL) 或特定用途新類型。下一篇將討論 Datetime/Interval。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved