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 |
對於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 個字節可用。
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 個字節可用。
