mysql基本操作命令大全(純幹貨)
一、mysql數據庫和表的創建以及增刪改查
創建和查看數據庫:
create database school; // 創建數據庫school
show databases; // 查看數據庫
數據庫中創建表
use school; // 使用school數據庫
create table list (id int(3) primary key auto_increment,name char(5) not null,score decimal(5,2)); //創建list數據庫
desc list; //查看list表結構
表中插入數據
insert into list (name,score) values (‘張三‘,90); // 插入張三,分數90;
(註:auto_increment 是自增列,插入時無需再對id列進行添加)
select * from list; //查看list表中所有信息
條件篩選查詢
select from list where id =1; // 篩選list表中id=1這一行數據
select from list where score >= 80; //篩選list表中score>=80的數據
條件篩選查詢並形成一張表
create table score select from list where score >=80;select from score; // 查看新表score中的信息
修改表中的信息
insert into list (name,score) values (‘趙六‘,null); // 添加趙六,成績為null
update list set score = 95 where name = ‘趙六‘; //修改成績為95
篩選數據降序升序查看
select from list where 1=1 order by score; //按照成績升序排列查看
select from list where 1=1 order by score desc; // 按照成績降序查看
查看表中行數,和求平均值
select count(*) from list; // 查看list表中有幾行數據
select avg(score) from list; //關於score列求平均值
添加列
alter table list add column hobby char(5); //添加hobby列
desc list; //查看list表結構
刪除行,表,以及數據庫
delete from list where name = ‘王五‘; // 刪除name為王五的一行
drop table list; //刪除list表
drop database school; //刪除school數據庫
二、索引的創建刪除
索引的作用相當於一本書的目錄,當數據信息大於2000條時,索引可以
使我們搜索數據的速度大大提升,下面我們來學習如何創建以及刪除索引。`
創建普通索引
create index name_index on list(name);
show index from list;
創建唯一索引
create unique index index id_index on list(id);
創建主鍵索引
1、在創建表的時候將指定列創建為primary key(前文創建表時已指定過id為主鍵索引,不在贅述)
2、創建完表後將指定列創建為primary key
alter table list add primary key (id); //修改id列為主鍵索引
創建全文索引
create table lists (descript TEXT,FULLTEXT (descript));
創建多頁索引
create index mutil_index on list(id,name); //創建以id,name為字段的多頁索引
刪除索引
1、刪除以create開頭為方法創建的索引
drop index id_index on list;
2、刪除以alter開頭為方法創建的索引
alter table list drop primary key;
三、視圖
視圖的作用可以打個比方,在公司查詢業績的時候,可以根據該員工具備的權限,來查看他對應業績的視圖,而無法查詢其他人的業績視圖。視圖在本質上並不是一張表,而是映射表的一部分。
創建視圖
create view score as select * from list where score >=80;
刪除視圖
四、事務
事務:一組操作共同執行或者都不執行,結果保持一致
事務具有一下4點性質:
1、原子性 不可分割
2、一致性 前後結果保持一致
3、隔離性 事務之間隔離,互不影響
4、持久性 一旦執行成功,不可更改
begin; //開始事務
update list set score =80 where name=‘李四‘; //更新李四成績為80
savepoint s1; //設置回滾點s1
update list set score =70 where name=‘王五‘; //更新王五成績為70
savepoint s2; //設置回滾點s2
rollback to savepoint s1; //回滾到s1
commit; //提交
mysql基本操作命令大全(純幹貨)