1. 程式人生 > >對Mysql資料庫的基本操作的一些總結

對Mysql資料庫的基本操作的一些總結

Mysql資料庫的基本操作

總注:所有sql語句結尾處最好加上分號符;

MySQL中的一些語句使用方法:

#檢視所有的資料庫

show databases;

 

#檢視資料庫下所有的表

show tables;

 

注:sql語句不區分大小寫,但是嚴重區分中英文符號,不允許使用中文符號。

#建立資料庫

create database test2;

#使用資料庫

use test2;

注:使用資料庫時,不能忘記這句。

#建立表 需要建立主鍵 主鍵是唯一的,不能為空。Primarykey為主鍵唯一標識

#  auto_increment:設定自增 unique:唯一約束 notnull:不為空約束

create table login(

  idint(8) primary key auto_increment,

 username varchar(20) unique,

 password varchar(20) not null,

 role int(8) not null

);

#查看錶設計

desc login;

注:表建立之後,可以通過查看錶設計,來檢查建立的表是否滿足要求。

 

增加資料:

 

 

#不按照欄位新增,那麼就需要按照表設計的欄位順序新增

Insert into login values(1,’joker12345’,’123456’,1);

 

#按照欄位新增 必須為主鍵設定自增,否則必須給主鍵賦值

insert into login(username,password,role)values(‘wangzhe123’,’23333’,2);

insert into login(username,password)valus(‘wangfei’,’21233’);

 

#添家多條資料

Insert into login(username,password,role)values(‘張飛122’,’123’,1),(‘關羽11’,’123456’,1),(’劉備123’,’128146’,2);

 

#刪除表

drop table login;

 

#刪除資料庫

drop database test2;

 

#刪除drop 與delete的區別

#drop是刪除表 表不存在 delete是刪除表中的資料,表仍然存在

delete from student where id =1

 

#刪除表中所有資料

delete from student

 

改:

#修改資料

注:set 後面的使用逗號分隔而不是用and 只有where 條件語句後使用and 代表並且

update student set username=’龍傲天’,password=’123456789’ where id=1

 

查:

# * 代表是所有的欄位,檢視當前表中所有的資料

select * from login;

 

#只查詢姓名和年齡 select後為查詢的欄位 from表

select password from login;

 

#查詢姓名不是張飛的使用者資訊

select * from login where username!='張飛';

select * from login where username<>'張飛';

 

# like模糊查詢

# 查詢名字中帶有‘張’的使用者資訊

select * from login where username like '%張%';

 

#查詢許可權在2-5之間的使用者

select * from login where role between 2and 5;

 

#查詢id包含2,3,5的使用者資訊

select * from login where id in(2,3,5);

 

#分頁 第一個引數為索引,通過索引得到頁數,第二個引數為每次顯示的條數

select * from login limit 2,2;

 

#將學生的年齡從小到大排序 order by為排序本身就有從小到大的功能asc: 小-大 desc:大-小

 

select * from login order by role asc;

 

#聚合函式count(統計總數) sum(求和) avg(平均值) max(最大值) min(最小值)

select count(*) from student;

 

 

表設計修改:

#新增欄位 phoneNumber

alter table login add phoneNumbervarchar(30) not null;

 

#將username 修改為uname

alter table login change username unamevarchar(20) unique;

 

#將phoneNumber 放到password後面

alter table login modify phoneNumbervarchar(30) after password;

 

#刪除表字段

alter table login drop phoneNumber;

 

#更改表名

alter table login rename m_login;

 

 

外來鍵的情況:

#一張表的外來鍵是另外一張表的主鍵 外來鍵可以建立多個 但是主鍵只能建立一個

#外來鍵的值可以重複。

 

#設定外來鍵 必須先給主鍵的建立了資料才能給外來鍵表進行新增資料 on delete cascade:級聯刪除

 

#設定了級聯刪除,既可以刪除主表資料由可以刪除外來鍵表資料,一旦刪除主表資料,外來鍵的關鍵的資料一併刪除

alter table student add constraint foreignkey(sno) references login(sno) on delete cascade;

 

表的複製和檢視的建立:

#表的複製 將student的資料複製到新建立的表student2中

create table student2 as select * fromstudent;

 

#建立檢視  檢視是虛擬的表其資料來源是真實的表

create view lon_view as select id,username,password from u_login;



參考:https://blog.csdn.net/ztyxy1115/article/details/78975449