MySQL和Java數據類型對照表
阿新 • • 發佈:2018-06-26
java 存儲 成功 tex jdbc pan gin pojo 顯示
對於bolb,一般用於對圖片的數據庫存儲,原理是把圖片打成二進制,然後進行的一種存儲方式,在java中對應byte[]數組。
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 |
對Boolean類型的解釋
mysql不支持bool類型。
1 create table xs 2 ( 3 id int primary key, 4 bl boolean 5 )
這樣可以創建成功,但檢查表結構會發現mysql把它替換成tinyint(1)。
即當把一個數據設置成bool類型的時候,數據庫會自動轉換成tinyint(1)的數據類型,其實這個就是變相的bool。 默認值也就是1,0兩種,分別對應了bool的true和false
在Java對應的POJO類中,可以根據實際情況使用java.lang.Boolean或者java.lang.Integer。
MySQL和Java數據類型對照表