java,hibernate和sql server對應的數據類型

java,hibernate和sql server對應的數據類型
Java數據類型 Hibernate數據類型 標準SQL數據類型
(PS:對於不同的DB可能有所差異)
byte、java.lang.Byte byte TINYINT
short、java.lang.Short short SMALLINT
int、java.lang.Integer integer INGEGER
long、java.lang.Long long BIGINT
float、java.lang.Float float FLOAT
double、java.lang.Double double DOUBLE
java.math.BigDecimal big_decimal NUMERIC
char、java.lang.Character character CHAR(1)
boolean、java.lang.Boolean boolean BIT
java.lang.String string VARCHAR
boolean、java.lang.Boolean yes_no CHAR(1)('Y'或'N')
boolean、java.lang.Boolean true_false CHAR(1)('Y'或'N')
java.util.Date、java.sql.Date date DATE
java.util.Date、java.sql.Time time TIME
java.util.Date、java.sql.Timestamp timestamp TIMESTAMP
java.util.Calendar calendar TIMESTAMP
java.util.Calendar calendar_date DATE
byte[] binary VARBINARY、BLOB
java.lang.String text CLOB
java.io.Serializable serializable VARBINARY、BLOB
java.sql.Clob clob CLOB
java.sql.Blob blob BLOB
java.lang.Class class VARCHAR
java.util.Locale locale VARCHAR
java.util.TimeZone timezone VARCHAR
java.util.Currency currency VARCHAR

另外還要補充兩個數據類型:

sql server                      hibernate                     java

int                          java.lang.Integer           java.lang.Integer

decimal                    big_decimal                 java.math.BigDecimal

下面是SQLSERVER數據類型詳細介紹

數據類型
類型
描              述
bit
整型
bit 數據類型是整型,其值只能是0、1或空值。這種數據類型用於存儲只有兩種可能值的數據,如Yes 或No、True 或Fa lse 、On 或Off
int
整型
int 數據類型可以存儲從- 231(-2147483648)到231 (2147483 647)之間的整數。存儲到數據庫的幾乎所有數值型的數據都可以用這種數據類型。這種數據類型在數據庫裏佔用4個字節
smallint
整型
smallint 數據類型可以存儲從- 215(-32768)到215(32767)之間的整數。這種數據類型對存儲一些常限定在特定範圍內的數值型數據非常有用。這種數據類型在數據庫裏佔用2 字節空間
tinyint
整型
tinyint 數據類型能存儲從0到255 之間的整數。它在你只打算存儲有限數目的數值時很有用。 這種數據類型在數據庫中佔用1 個字節
numeric
精確數值型
numeric數據類型與decimal 型相同
decimal
精確數值型
decimal 數據類型能用來存儲從-1038-1到1038-1的固定精度和範圍的數值型數據。使用這種數據類型時,必須指定範圍和精度。 範圍是小數點左右所能存儲的數字的總位數。精度是小數點右邊存儲的數字的位數
money
貨幣型
money 數據類型用來表示錢和貨幣值。這種數據類型能存儲從-9220億到9220 億之間的數據,精確到貨幣單位的萬分之一
smallmoney
貨幣型
smallmoney 數據類型用來表示錢和貨幣值。這種數據類型能存儲從-214748.3648 到214748.3647 之間的數據,精確到貨幣單位的萬分之一
float
近似數值型
float 數據類型是一種近似數值類型,供浮點數使用。說浮點數是近似的,是因爲在其範圍內不是所有的數都能精確表示。浮點數可以是從-1.79E+308到1.79E+308 之間的任意數
real
近似數值型
real 數據類型像浮點數一樣,是近似數值類型。它可以表示數值在-3.40E+38到3.40E+38之間的浮點數
datetime
日期時間型
datetime數據類型用來表示日期和時間。這種數據類型存儲從1753年1月1日到9999年12月3 1日間所有的日期和時間數據, 精確到三百分之一秒或3.33毫秒
Smalldatetime
日期時間型
smalldatetime 數據類型用來表示從1900年1月1日到2079年6月6日間的日期和時間,精確到一分鐘
cursor
特殊數據型
cursor 數據類型是一種特殊的數據類型,它包含一個對遊標的引用。這種數據類型用在存儲過程中,而且創建表時不能用
timestamp
特殊數據型
timestamp 數據類型是一種特殊的數據類型,用來創建一個數據庫範圍內的唯一數碼。 一個表中只能有一個timestamp列。每次插入或修改一行時,timestamp列的值都會改變。儘管它的名字中有“time”, 但timestamp列不是人們可識別的日期。在一個數據庫裏,timestamp值是唯一的
Uniqueidentifier
特殊數據型
Uniqueidentifier數據類型用來存儲一個全局唯一標識符,即GUID。GUID確實是全局唯一的。這個數幾乎沒有機會在另一個系統中被重建。可以使用NEWID 函數或轉換一個字符串爲唯一標識符來初始化具有唯一標識符的列
char
字符型
char數據類型用來存儲指定長度的定長非統一編碼型的數據。當定義一列爲此類型時,你必須指定列長。當你總能知道要存儲的數據的長度時,此數據類型很有用。例如,當你按郵政編碼加4個字符格式來存儲數據時,你知道總要用到10個字符。此數據類型的列寬最大爲8000 個字符
varchar
字符型
varchar數據類型,同char類型一樣,用來存儲非統一編碼型字符數據。與char 型不一樣,此數據類型爲變長。當定義一列爲該數據類型時,你要指定該列的最大長度。 它與char數據類型最大的區別是,存儲的長度不是列長,而是數據的長度
text
字符型
text 數據類型用來存儲大量的非統一編碼型字符數據。這種數據類型最多可以有231-1或20億個字符
nchar
統一編碼字符型
nchar 數據類型用來存儲定長統一編碼字符型數據。統一編碼用雙字節結構來存儲每個字符,而不是用單字節(普通文本中的情況)。它允許大量的擴展字符。此數據類型能存儲4000種字符,使用的字節空間上增加了一倍
nvarchar
統一編碼字符型
nvarchar 數據類型用作變長的統一編碼字符型數據。此數據類型能存儲4000種字符,使用的字節空間增加了一倍
ntext
統一編碼字符型
ntext 數據類型用來存儲大量的統一編碼字符型數據。這種數據類型能存儲230 -1或將近10億個字符,且使用的字節空間增加了一倍
binary
二進制數據類型
binary數據類型用來存儲可達8000 字節長的定長的二進制數據。當輸入表的內容接近相同的長度時,你應該使用這種數據類型
varbinary
二進制數據類型
varbinary 數據類型用來存儲可達8000 字節長的變長的二進制數據。當輸入表的內容大小可變時,你應該使用這種數據類型
image
二進制數據類型
image 數據類型用來存儲變長的二進制數據,最大可達231-1或大約20億字節
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章