1. 程式人生 > >Java資料型別和MySql資料型別對應表

Java資料型別和MySql資料型別對應表

型別名稱 顯示長度 資料庫型別 JAVA型別 JDBC型別索引(int) 描述
VARCHAR L+N VARCHAR java.lang.String 12
CHAR N CHAR java.lang.String 1
BLOB L+N BLOB java.lang.byte[] -4
TEXT 65535 VARCHAR java.lang.String -1
INTEGER 4 INTEGER UNSIGNED
java.lang.Long 4
TINYINT 3 TINYINT UNSIGNED java.lang.Integer -6
SMALLINT 5 SMALLINT UNSIGNED java.lang.Integer 5
MEDIUMINT 8 MEDIUMINT UNSIGNED java.lang.Integer 4
BIT 1 BIT java.lang.Boolean -7
BIGINT 20 BIGINT UNSIGNED
java.math.BigInteger -5
FLOAT 4+8 FLOAT java.lang.Float 7
DOUBLE 22 DOUBLE java.lang.Double 8
DECIMAL 11 DECIMAL java.math.BigDecimal 3
BOOLEAN 1 同TINYINT
ID 11 PK (INTEGER UNSIGNED) java.lang.Long 4
DATE 10 DATE java.sql.Date 91
TIME 8 TIME java.sql.Time 92
DATETIME 19 DATETIME java.sql.Timestamp 93
TIMESTAMP 19 TIMESTAMP java.sql.Timestamp 93
YEAR 4 YEAR java.sql.Date 91




 

對於bolb,一般用於對圖片的資料庫儲存,原理是把圖片打成二進位制,然後進行的一種儲存方式,在java中對應byte[]陣列。

對於boolen型別,在mysql資料庫中,個人認為用int型別代替較好,對bit操作不是很方便,尤其是在具有web頁面開發的專案中,表示0/1,對應java型別的Integer較好。

decimal列的宣告語法是decimal(m,d)。

在mysql5.1中,引數的取值範圍: 
1、M是數字的最大數(精度)。其範圍為1~65(在較舊的MySQL版本中,允許的範圍是1~254)。 
2、D是小數點右側數字的數目(標度)。其範圍是0~30,但不得超過M。 
說明:float佔4個位元組,double佔8個位元組,decimail(M,D)佔M+2個位元組。 
如DECIMAL(5, 2) 的最大值為9 9 9 9 . 9 9,因為有7 個位元組可用。