DDL語句(Data Definition Language)
數(shù)據(jù)庫操作
創(chuàng)建數(shù)據(jù)庫
create database 數(shù)據(jù)庫名;
create database 數(shù)據(jù)庫名 character set 字符集;
查看數(shù)據(jù)
查看數(shù)據(jù)庫服務(wù)器中的所有的數(shù)據(jù)庫:
show databases;
查看某個數(shù)據(jù)庫的定義的信息:
show create database 數(shù)據(jù)庫名;
image.png
刪除數(shù)據(jù)庫(慎用)
drop database 數(shù)據(jù)庫名稱;
其他數(shù)據(jù)庫操作命令
切換數(shù)據(jù)庫:
use 數(shù)據(jù)庫;
查看正在使用的數(shù)據(jù)庫:
select database();
image.png
表操作
字段類型
MySQL支持多種類型汛兜,大致可以分為三類:數(shù)值、日期/時間和字符串(字符)類型缕题。
- 數(shù)值類型
注意:可以使用關(guān)鍵字UNSIGNED
指定無符號
image.png
- 日期和時間類型
image.png
- 字符串類型
image.png
注意:
char(n) 和 varchar(n) 中括號中 n 代表字符的個數(shù),并不代表字節(jié)個數(shù)市袖,比如 CHAR(30) 就可以存儲 30 個字符咆贬。
CHAR 和 VARCHAR 類型類似,但它們保存和檢索的方式不同涧团。它們的最大長度和是否尾部空格被保留等方面也不同切油。在存儲或檢索過程中不進(jìn)行大小寫轉(zhuǎn)換蝙斜。
查看表結(jié)構(gòu)
desc 表名;
show create table 表名;
修改表
alter table 表名 add 列名 類型(長度) 約束; --修改表添加列.
alter table 表名 modify 列名 類型(長度) 約束; --修改表修改列的類型長度及約束. alter table 表名 change 舊列名 新列名 類型(長度) 約束; --修改表修改列名.
alter table 表名 drop 列名; --修改表刪除列.
rename table 表名 to 新表名; --修改表名
alter table 表名 character set 字符集; --修改表的字符集
DML語句(Data Manipulation Language)
插入語記錄
insert into 表 (列名1,列名2,列名3..) values select (列名1,列名2,列名3..) from 表
insert into 表 values select * from 表
更新記錄
update 表名 set 字段名=值,字段名=值 where 條件;
刪除記錄
刪除表中所有記錄使用【delete from 表名】,還是用【truncate table 表名】澎胡?
刪除方式:
- delete :一條一條刪除孕荠,不清空auto_increment記錄數(shù)娩鹉。
- truncate :直接將表刪除,重新建表稚伍,auto_increment將置為零弯予,從新開始。
DQL語句(Data Query Language)
完整DQL語法順序:
SELECT DISTINCT
< select_list >
FROM
< left_table > < join_type >
JOIN < right_table > ON < join_condition >
WHERE
< where_condition >
GROUP BY < group_by_list >
HAVING< having_condition >
ORDER BY < order_by_condition >
LIMIT < limit_number >
分組
-- 根據(jù)cid字段分組个曙,分組后統(tǒng)計商品的個數(shù).
select cid, count(*) from product group by cid;
-- 根據(jù)cid分組锈嫩,分組統(tǒng)計每組商品的平均價格,并且平均價格 > 60;
select cid, avg(price) from product group by cid having avg(price)>60;
- 注意事項
- select語句中的列(非聚合函數(shù)列)垦搬,必須出現(xiàn)在group by子句中
- group by子句中的列呼寸,不一定要出現(xiàn)在select語句中
- 聚合函數(shù)只能出現(xiàn)select語句中或者h(yuǎn)aving語句中,一定不能出現(xiàn)在where語句中猴贰。
DCL(Data Control Language)
數(shù)據(jù)控制語句对雪,用于控制不同數(shù)據(jù)段直接的許可和
訪問級別的語句。這些語句定義了數(shù)據(jù)庫米绕、表慌植、字段、用戶的訪問權(quán)限和安全級別义郑。主要的
語句關(guān)鍵字包括grant、revoke 等丈钙。