MySQL總結
(1)數據類型
類型 |
備注 |
tinyint/smallint/mediumint/int/bigint |
1B/2B/3B/4B/8B |
float/double |
單精度/雙精度浮點型 |
decimal |
不會產生精度丟失的單精度/雙精度浮點型 |
date |
日期類型 |
time |
時間類型 |
datetime/TimeStamp |
日期時間類型/TimeStamp(登錄時間,自動填充) |
year |
年類型 |
char |
定長字符串類型 |
varchar |
可變長字符串類型 |
tinyblob/blob/mediumblob/longblob |
255B/64K/16M/4G大小圖片/音樂二進行數據 |
tinytext/text/mediumtext/longtext |
255B/64K/16M/4G大小的文本數據 |
(2)mysql小知識
①登錄
mysql > mysql -u root -p回車
****回車
mysql > exit回車
②創建/使用/查看/刪除數據庫
create database 數據庫名;(以分號結束),SQL命令大小寫無關
show databases;
use 數據庫名;
③修改/備份/恢復數據庫數據
備份:c:\> mysqldump -u root -p mydb2 > d:\mydb2.sql回車(可無分號結束)密碼回車
注意:該SQL命令是MySQL特有的,必須是MySQL環境外執行,即WindowXp環境中執行(退出mysql平臺)
恢復:mysql:\> source d:\mydb2.sql;回車(需要分號結束)
注意:該SQL命令是MySQL特有的,必須是MySQL環境中執行。
④MySQL支持數據類型簡介
(1)Date/Datetime/TimeStamp,定界符使用''或"",但部份數據庫可能不支持"",優先推薦''作為定界符,對于日期類型,MySQL數據庫有一個的判段-功能
(2)varchar(變長)/char(定長)
(3)Text(大于65536字符的數據)/Blob(存儲二進制多媒體數據,例如Mp3等),該二類型都有四個子類型,根據存儲內容的大小進行選擇
(4)INT型有帶符號和無符號之分,int(5)表示int默認為5位,如果插入id值,小于5位,左補空格,如果插入id值,大于5位,按照插入值,但必須滿足int類型的大小確定
(5)FLOAT(M,D),D表示小數點后的D位,按四舍五入計算,M表示除小數點外的所有位數總和
⑤MySQL修改表和字符集
show variables like 'character%';
set character_set_results=gbk;
(3)MySQL解決中文亂碼(XP下)
2種解決方案:
a)在當前MySQL客戶端修改輸入和輸出的MySQL環境變量為GBK或GB2312,注意,該種方式只在當前窗口中有效
b)修改MySQL目錄下的my.ini文件,將客戶端的缺省編碼方式改為GBK或GB2312,注意,需要重新啟動MySQL服務
(4)表的增刪改操作
a)insert
b)update
c)delete from 或truncate table或drop table
delete from:按行刪除表中的所有記錄,但會保留表,適合刪除數據量不大數據,可按條件刪除
truncate table:復制原表結構-〉一次性刪除整表 -> 自動恢復原表結構,適合刪除數據量較大數據,不能按條件刪除
drop table:刪除表本身
刪除記錄時,一定要留意表間的關聯關系
(5)表的查詢操作
(1)select distinct/*/列名 from 表名
(2)select 表達式/對列名加別名 from 表名 NULL+X=NULL
(3)where子句,出現在from后面,where是按行篩選
(4)邏輯運算和關系運算
(5)排序:NULL值為最小,使用order by子句,默認升序,order by子句必須放置在最后
(6)復合函數
①count()函數,統計之用,不統計NULL值
②sum()函數,統計和之用,不要統計非數值,如果統計非數值,返回0