mysql學習筆記(二)mysql快速入門
- 2020 年 2 月 6 日
- 筆記
快速入門命令:
資料庫的增刪改查
不區分大小寫
1.顯示所有資料庫:show databases;
2.使用資料庫(進入資料庫):use 資料庫名稱;
3.添加資料庫:CREATE DATABASE 資料庫名稱;
4.刪除資料庫:drop database 資料庫名稱;
5.修改資料庫:這個不存在,除非備份數據以後建新庫
表的增刪改查
如果數據包含中文,要考慮編碼問題,可以調整命令行的編碼格式
1.顯示所有的表:show tables;
2.新建表:create table 表名(表項名 表項類型,表項名 表項類型 ……);
3.刪除表:drop table 表名;
4.修改表: alter table 表名 rename to 新表名;
3.在表中插入數據:insert into 表名 values(表項值, 表項值);
4.在表中刪除數據:delete from 表名 where (表項名=XXX);
5.在表中更新數據:update 表名 set 表項名=表項新值 where 表項名=表項舊值;
6.在表中查詢數據: select * from 表名 where 表項名=表項舊值;
數據表常用的數據類型
1.整型(tinyint 1位元組,smallint 2位元組,mediumint 3位元組,int/integer 4位元組,bigint 8位元組)
可選屬性:
M:在0填充的時候才有意義
unsigned:無符號類型
zerofill:0填充
例如int(5) unsigned zerofill:表示每一個整數有5位數字,不足5位在左邊補充0,如果只是單獨的int(5)那不會起作用。
2.浮點型(float 4個位元組,double 8個位元組)
float(M,D),M表示總位數,D表示精度
例如float(5,2)的數據範圍就可表示為[-999.99~+999.99]
3.定點數(類似於java的bigdecimal,使用字元串存儲)
decimal
decimal(M,D)
4.日期和時間
date:表示日期
time:表示時間
datetime:表示日期和時間
year:表示年
timestamp:表示日期和時間
datetime和timestamp的區別:timestamp實際存儲的毫秒值,顯示時,根據毫秒值算出一個本地化的日期時間,datetime就是存儲的日期時間,timestamp因為存儲的毫秒值,在比較和計算時,效率比較高。datetime和timestamp可以表示的時間範圍是不同的。datetime是1000.01.01……timestamp是1970.01.01…….
5.字元串
mysql沒有單字元類型,只有字元串類型
char:定長字元串,長度為[1,255],char(1)/char,char(x),長度為1個字元的字元串或者長度為x個字元的字元串,例如char(2),實際存儲的是"男」,實際也是佔用2個字元的位置,另一個空的位置存儲的為u0000,表示這個字元是unicode值。
mysql是按照字元為基本單位來存儲的,而不是位元組。https://www.cnblogs.com/devcjq/articles/5151172.html
varchar:varchar(M),這個M指最長不超過M個字元,varchar存儲的空間為字元數+2個位元組數,這兩個位元組用來記錄實際佔用的字元個數。
text:長文本,一般用於存儲文字較多又不經常檢索的資訊。
6.位類型
二進位的位類型,bit(M)允許存儲M位值,M的範圍為1~64,默認為1
7.二進位數據
blob系列類型,binary和varbinary類型類似於char和varchar,但他們存儲的是二進位數據
8.枚舉(enum)