mysql基礎(chǔ)數(shù)據(jù)類型
mysql常用數(shù)據(jù)類型概覽
習(xí)/1036857-20170801181433755-146301178.png)1. 數(shù)字: 整型:tinyinit int bigint 小數(shù): float :在位數(shù)比較短的情況下不精準 double :在位數(shù)比較長的情況下不精準 0.000001230123123123 存成:0.000001230000 decimal:(如果用小數(shù),則用推薦使用decimal) 精準 內(nèi)部原理是以字符串形式去存 2. 字符串: char(10):簡單粗暴,浪費空間,存取速度快 root存成root000000 varchar:精準,節(jié)省空間,存取速度慢 sql優(yōu)化:創(chuàng)建表時,定長的類型往前放,變長的往后放 比如性別 比如地址或描述信息 >255個字符,超了就把文件路徑存放到數(shù)據(jù)庫中。 比如圖片,視頻等找一個文件服務(wù)器,數(shù)據(jù)庫中只存路徑或url。3. 時間類型: 最常用:datetime 4. 枚舉類型與集合類型
數(shù)值類型
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-HAIxWM9Z-1585063057990)(D:/筆記/mysql/復(fù)習(xí)/1036857-20170801181433755-146301178.png)]
1、整數(shù)類型
整數(shù)類型:TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT 作用:存儲年齡,等級,id,各種號碼等整型類型測試 默認是有符號的mysql> create table t1(money tinyint); #注意,創(chuàng)建表時最后一個字段后面不能有逗號,錯誤寫法mysql> create table t1(money tinyint,);mysql> insert into t1 values(11);Query OK, 1 row affected (0.28 sec)mysql> select * from t1;mysql> insert into t1 values(-10);Query OK, 1 row affected (0.11 sec)mysql> select * from t1;mysql> insert into t1 values(-200);Query OK, 1 row affected, 1 warning (0.10 sec)mysql> select * from t1;設(shè)置了數(shù)據(jù)類型,會有一個約束效果,只能表示自己范圍內(nèi)的數(shù)創(chuàng)建 無符號數(shù)值類型 的寫法:mysql> create table t2(id tinyint unsigned);
2、浮點型
浮點類型:float double 作用:存儲薪資、身高、溫度、體重、體質(zhì)參數(shù)等測試mysql> create table t3(id float(60,30)); # 60代表小數(shù)位+整數(shù)位總數(shù)Query OK, 0 rows affected (1.70 sec) # 30表示小數(shù)位最高30位mysql> create table t4(id double(60,30));Query OK, 0 rows affected (0.88 sec)mysql> create table t5(id decimal(60,30)); # decimal能夠存儲精確值的原因在于其內(nèi)部按照字符串存儲。Query OK, 0 rows affected (0.96 sec)mysql> insert into t3 values(1.1111111111111111111111);Query OK, 1 row affected (0.13 sec)mysql> insert into t4 values(1.1111111111111111111111);Query OK, 1 row affected (0.22 sec)mysql> insert into t5 values(1.1111111111111111111111);Query OK, 1 row affected (0.09 sec)mysql> select * from t3;mysql> select * from t4;mysql> select * from t5;
1.創(chuàng)建表 create table t2(f1 float(5,2),f2 float,f3 double(5,2),f4 double);float(5,2) 保留兩位小數(shù) 并且四舍五入double(5,2)2.寫入數(shù)據(jù) insert into t2 values(5.2336,5.2336,5.336,5.2336);3.查看表中數(shù)據(jù) select * from t2;4.指定寫入數(shù)據(jù)insert into t2(f2,f4) values(5.1783682169875975,5.1783682169875975);insert into 表名(字段1,字段3) values (值1,值3);1.創(chuàng)建t3表create table t3(f1 float,d1 double,d2 decimal(30,20),d3 decimal);2.查看表結(jié)構(gòu)desc t3;3.寫入數(shù)據(jù) insert into t3 values(5.1783682169875975179,5.1783682169875975179,5.1783682169875975179,5.1783682169875975179);int--------不約束長度,最多表示10位數(shù)float(m,n) m-----一共多少位 n-----小數(shù)部分多少位
新聞熱點
疑難解答
圖片精選