柚子快報(bào)邀請(qǐng)碼778899分享:數(shù)據(jù)庫(kù) MySQL 基礎(chǔ)
柚子快報(bào)邀請(qǐng)碼778899分享:數(shù)據(jù)庫(kù) MySQL 基礎(chǔ)
視頻筆記來(lái)自黑馬b站教程,順序稍作整理
DDL定義語(yǔ)言1. 數(shù)據(jù)庫(kù)操作a.數(shù)據(jù)庫(kù)創(chuàng)建b.數(shù)據(jù)庫(kù)刪除c.數(shù)據(jù)庫(kù)查詢(xún)d.數(shù)據(jù)庫(kù)使用
2. 表操作a.表創(chuàng)建b.表刪除c.表查詢(xún)d.表修改
DML操作語(yǔ)言1.插入數(shù)據(jù)insert2.修改數(shù)據(jù)update3.刪除數(shù)據(jù)delete
DQL 查詢(xún)語(yǔ)言基本查詢(xún)select條件查詢(xún)聚合函數(shù)分組查詢(xún)排序查詢(xún)分頁(yè)查詢(xún)練習(xí)編寫(xiě)順序
DCL用戶(hù)管理語(yǔ)句用戶(hù)管理權(quán)限控制
DDL定義語(yǔ)言
DDL語(yǔ)句用于操作數(shù)據(jù)庫(kù),表結(jié)構(gòu),字段
1. 數(shù)據(jù)庫(kù)操作
我們假設(shè)我們有animal數(shù)據(jù)庫(kù)中的bird表
a.數(shù)據(jù)庫(kù)創(chuàng)建
create database [if not exit] 數(shù)據(jù)庫(kù)名 [default charset 字符集例如:utfmb4][collate 排序規(guī)則];
b.數(shù)據(jù)庫(kù)刪除
drop database [if not exit]數(shù)據(jù)庫(kù)名;
例
c.數(shù)據(jù)庫(kù)查詢(xún)
# 查詢(xún)所有數(shù)據(jù)庫(kù)
show databases;
# 查詢(xún)當(dāng)前數(shù)據(jù)庫(kù)
select database();
例
d.數(shù)據(jù)庫(kù)使用
use 數(shù)據(jù)庫(kù)名
例
2. 表操作
a.表創(chuàng)建
注意最后一個(gè)字段結(jié)尾沒(méi)有逗號(hào)
create table bird(
字段1 type [comment 注釋內(nèi)容],
字段2 type [comment 注釋內(nèi)容]
)[comment 注釋內(nèi)容];
例
create table bird(
id int comment "編號(hào)",
name varchar(50) comment "姓名"
) comment "鳥(niǎo)類(lèi)";
下圖是MySQL的數(shù)值類(lèi)型 decimal:以123.45為例,精度為5,標(biāo)度為2 對(duì)于年齡,可以使用無(wú)符號(hào)類(lèi)型:TINYINT UNSIGNED 對(duì)于分?jǐn)?shù)(0.0-100.0)可以確定精度:double(4,1)
字符串類(lèi)型: char和varchar區(qū)別 對(duì)于char(10),即使我們只存儲(chǔ)一個(gè)字符,占用空間大小仍為10,使用空格補(bǔ)位。 char性能更高
時(shí)間類(lèi)型
b.表刪除
drop table [if exists] 表名;
//刪除表后重新創(chuàng)建同名空表
truncate table 表名;
c.表查詢(xún)
#查詢(xún)當(dāng)前數(shù)據(jù)所有表
#使用前需用use選擇一個(gè)數(shù)據(jù)庫(kù)
show tables;
#查詢(xún)表結(jié)構(gòu),打印字段,類(lèi)型...
desc 表名;
#查詢(xún)指定表的建表語(yǔ)句
show create table 表名;
例:
d.表修改
修改表名
alter table 表名 rename to 新表名
添加字段
alter table 表名 add 字段名 類(lèi)型 [comment 注釋];
例 3. 刪除字段
alter table 表名 drop 字段名;
修改數(shù)據(jù)類(lèi)型
alter table 表名 modify 字段名 新數(shù)據(jù)類(lèi)型;
修改字段名和字段類(lèi)型
alter table 表名 change 舊字段名 新字段名 類(lèi)型 [comment 注釋][約束];
DML操作語(yǔ)言
完成數(shù)據(jù)的增刪改
1.插入數(shù)據(jù)insert
insert into 表名(字段1,字段2…)values(值1,值2…),(值1,值2…); insert into 表名 values (值1,值2…),(值1,值2…); 例
insert into bird(name) values ('金絲雀'),('麻雀');
insert into bird values (3,'啄木鳥(niǎo)')
select * from bird;
2.修改數(shù)據(jù)update
update 表名 set 字段1=值1,字段2=值2 [where 條件]; 注意:
可以添加多個(gè)字段和值,以改變多個(gè)字段可以不包括where條件,這樣則會(huì)修改整張表的值若想刪除某一字段值,則可以將其update為null。而delete則為刪除整行字段的值
update bird set name = '鸚鵡' where id = 1;
3.刪除數(shù)據(jù)delete
delete from 表名 [where 條件];
delete from bird where id = 2;
DQL 查詢(xún)語(yǔ)言
基本查詢(xún)select
選取某幾列進(jìn)行打印。
查詢(xún)多個(gè)字段
select 字段1 [as 別名1], 字段2 [as 別名1], 字段3 [as 別名1] ...from 表名;
select * from 表名;
#去除重復(fù)記錄
select distinct 字段 列表 from 表名;
條件查詢(xún)
根據(jù)某一列作為條件,尋找符合條件的行。
select 字段列表 from 表名 where 條件列表;
條件運(yùn)算符如下圖所示 例
聚合函數(shù)
獲得某一列的統(tǒng)計(jì)值。
select 聚合函數(shù)(字段) from 表名;
分組查詢(xún)
將列表根據(jù)某一列,進(jìn)行分組。
select 字段列表 from 表名 [where條件] group by 分組字段名 [having 分組后過(guò)濾條件]
select s_sex,count(s_sex) from student group by s_sex;
#select關(guān)鍵字后的字段列表名,只能于group by后的分組字段名相關(guān)
排序查詢(xún)
select 字段列表 from 表名 order by 字段1 排序方式1, 字段2 排序方式2;
asc ; 升序(默認(rèn)值) desc : 降序
分頁(yè)查詢(xún)
select 字段列表 from 表名 limit 起始索引, 查詢(xún)記錄數(shù);
練習(xí)
編寫(xiě)順序
DCL用戶(hù)管理語(yǔ)句
用戶(hù)管理
權(quán)限控制
柚子快報(bào)邀請(qǐng)碼778899分享:數(shù)據(jù)庫(kù) MySQL 基礎(chǔ)
精彩鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。