儲存引擎決定了表的型別,而表內存放的資料也要有不同的型別,每種資料型別都有自己的寬度,但寬度是可選的.
常用資料型別:
1.數字:
整數:tinyint :
**********==有符號tinyint**********====# 建立資料庫db4
create database db4 charset utf8;
# 切換到當前db4資料庫
mysql> use db4;
# 建立t1 規定x欄位為tinyint資料型別(預設是有符號的)
mysql> create table t1(x tinyint);
# 驗證,插入-1這個數
mysql> insert into t1 values(-1);
# 查詢 表記錄,查詢成功(證明預設是有符號型別)
mysql> select * from t1;
+------+
| x |
+------+
| -1 |
+------+
#執行如下操作,會發現報錯。因為有符號範圍在(-128,127)
mysql> insert into t1 values(-129),(128);
error 1264 (22003): out of range value for column 'x' at row 1
**********==無符號tinyint**********====
# 建立表時定義記錄的字元為無符號型別(0,255) ,使用unsigned
mysql> create table t2(x tinyint unsigned);
# 報錯,超出範圍
mysql> insert into t2 values(-129);
error 1264 (22003): out of range value for column 'x' at row 1
# 插入成功
mysql> insert into t2 values(255);
query ok, 1 row affected (0.00 sec)
int :
mysql> create table t3(id int(1) unsigned);#插入255555記錄也是可以的
mysql> insert into t3 values(255555);
mysql> select * from t3;
+--------+
| id |
+--------+
| 255555 |
+--------+
ps:以上操作還不能夠驗證,再來一張表驗證用zerofill 用0填充
# zerofill 用0填充
mysql> create table t4(id int(5) unsigned zerofill);
mysql> insert into t4 value(1);
query ok, 1 row affected (0.00 sec)
#插入的記錄是1,但是顯示的寬度是00001
mysql> select * from t4;
+-------+
| id |
+-------+
| 00001 |
+-------+
1 row in set (0.00 sec)
小數:float : 在位數比較短的情況下不精準
double : 在位數比較長的情況下不精準
0.000001230123123123
存成: 0.000001230000
decimal : (如果用小數,則推薦使用decimal)
精準內部原理是以字串形式儲存
2.字串:
char(10) : 簡單粗暴,浪費空間,訪問速度快
root存成root000000
varchar : 精準,節省空間,訪問速度慢
sql優化: 建立表時,定長的型別往前放,變長的往後放
比如性別 比如位址或者描述
>255個字元,超了就把檔案路徑存放到資料庫中.
3.時間型別:
最常用: datetime
4.列舉型別與集合型別:
enum 和set
mysql資料型別用法 mysql資料型別和用法
歡迎進入linux社群論壇,與200萬技術人員互動交流 進入 mysql支援多種列型別 數值型別 日期 時間型別和字串 字元 型別。本章首先對這些列型別進行了概述,然後更加詳細地描述了各種列的型別,以及列型別儲存需求的總結。概述很簡單。關於具體列型別 歡迎進入linux社群論壇,與200萬技術人員互...
mysql 資料型別 真假 MySQL 資料型別
mysql基礎 資料型別 整型型別 根據所儲存的整數數值取值範圍不同,可分為以下五類 1 tinyint佔1個位元組 2 smallint佔2個位元組 3 mediumint 佔3個位元組 4 int佔4個位元組 5 bigint佔8個位元組 根據每種型別所佔的位元組數可確定其無符號整數和有符號整數...
mysql 郵箱 資料型別 mysql 資料型別
1 整型mysql資料型別含義 有符號 tinyint m 1個位元組 範圍 128 127 smallint m 2個位元組 範圍 32768 32767 mediumint m 3個位元組 範圍 8388608 8388607 int m 4個位元組 範圍 2147483648 21474836...