常見數值型別:
數值型
整型小數:
定點數浮點數
字元型:
較短的文字:char、varchar
較長的文字:text、blob(較長的二進位制資料)
日期型:
分類:
tinyint、smallint、mediumint、int/integer、bigint
1位元組 2位元組 3位元組 4位元組 8位元組
特點:①預設有符號,通過unsigned關鍵字設定無符號
②如果插入的數字超出了整型的範圍,會報out of range異常,並插入的是臨界值
③如果不設定長度,會有預設值
長度代表了顯示的最大寬度,如果不夠會用0在左邊填充,但必須搭配zerofill使用
drop
table
ifexists tab_int;
create
table tab_int(
t1 int
, t2 int
unsigned
t2 int zerofill
);desc tab_int;
insert
into tab_int values(-
16,-2
);select
*from
`tab_int`
;
分類
1.浮點型
float(m,d)
double(m,d)
2.定點型
dec(m,d)
decimal(m,d)
特點:①m代表 整數部位+小數部位,
d代表 小數部位,
如果超過範圍,則插入臨界值
②m和d可省略
如果是decimal,則m預設為10,d預設為0
如果是float和double,則會根據插入數值的精度來決定
③定點型的精確度較高,如果要求插入的數值精度較高 如貨幣運算等,則考慮定點型
create
table tab_float(
f1 float(5
,2),
f2 double(5
,2),
f3 dec(5
,2))
insert
into tab_float values
(123.456
,123.456
,123.456);
select
*from tab_float
較短的文字:
char
varchar
其他: binary和varbinary用於儲存較短的二進位制
enum用於儲存列舉
set用於儲存集合
較長的文字:
text
bigtext
blob(較大的二進位制)
特點:寫法 m的意思 特點 空間耗費情況 效率
char char(m) 最大的字元數,可以省略,預設為1 固定長度的字元 比較耗費 高
varchar varcahr(m) 最大的字元數,不可以省略 可變長度的字元 比較節省 低
分類:
date 只儲存日期
time 只儲存時間
year 只儲存年
datetime 儲存日期+時間
timestamp 儲存日期+時間
特點:位元組 範圍 時區等的影響
datetime 8 1000-2023年 不受
timestamp 4 1970-2023年 受
create
table tab_date(
t1 datetime
, t2 timestamp);
insert
into tab_date values
(now()
,now()
);select
*from tab_date;
show variables like
"time_zone"
;
Day102 常見約束 MySQL
含義 一種限制,用於限制表中的資料,為了保證表中的資料準確和可靠性 一致性 分類 六大約束 not null 非空,用於保證該字段的值不能為空,比如姓名 學號等 default 預設,用於保證該字段的值有預設值,比如性別 primary key 主鍵,用於保證該字段的值具有唯一性,並且非空,如學號 ...
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個位元組 根據每種型別所佔的位元組數可確定其無符號整數和有符號整數...