數據庫
用來存儲數據的倉庫,本質是個文件(結構化的文件)。
數據可以持久化存儲或緩存。持久化存儲再磁盤內。緩存在內存中
mysql操作步驟
1- 安裝mysql
去網站直接加載
2- cmd中安裝mysql
sudo apt-get install mysql-server
3- 登錄數據庫
mysql -u root -p
SQL分類
DDL: Date Definition Language
DML: Date Manipulation Language
DQL: Date Query Language
DCL: Date Contril Language
DDL
1- 創建數據庫
create database user charset=utf8;;
2- 切換數據庫
use user;
3- 查看數據庫信息
select database();
4- 查看系統中所有數據庫
show databases;
5- 推出數據庫
exit
6- 查看所有表
show tables
7- 創建表
create table User(
sname varchar(20) primary key,
sage int,
ssex varchar(20) not null,
sbirthday datetime,
);
8- 查看錶結構
desc User
9- 修改表名
alter table User rename userinfo;
10- 修改字段類型
alter table userinfo modify ssex varchar(10)
11- 替換字段
alter table userinfo change ssex sgender varchar(10)
12- 新增字段
alter table userinfo add ssore int after sages;
13- 刪除字段
alter table userinfo drop ssore.
14- 字段排行
數據庫的數據類型
1- 數字類型
int 大小正負: 2147483648
tinyint 大小正負:128
smallint 大小正負:32767 (3w)2^15
mediumint 大小正負:8388608 (百萬)2^23
bigint 大小正負:9223372036854775808 (百億億)2^53
floalt 大小正負:
double 大小正負:
decimal 大小正負:
2- 時間類型
data
datatime
timetamp
time
year
3- 字符串類型
char 大小正負:255 (默認爲1)
varchar 大小正負:255
blob/text 大小正負:65535
tinyblob/tinytext
mediumblob/mediumtext (1千6百萬)
longblog/longtext (42億)
enum
DML
1- 插入整條數據
insert into stu(sname,sage,sgender,sbirthday) values('張三',20,'男',1990,1,1),('李四',20,'男','2000,1,1');
2- 插入部分數據
insert into stu(sname) values('王五')
3- 更新數據
update stu set sgender='female',sage=18 where sname='王五';
4- 刪除數據
delete from stu where sname='王五';
drop table stu(刪除表)
drop database user(刪除數據庫)
5- 查看數據
select * from stu
DQL
1- 條件查詢
between..and.. (兩則都包含,左右都爲閉區間)
and
or
in
not in
is
is not
2- 模糊查詢
where子句中=表示精準查詢
like:與where配合使用進行模糊查詢
通配符:
_:匹配任一個字符
select * from user where name like "zhang___"
%:匹配0-n個字符【n>=1】
select * from user where name like "%wang%"
3- 起別名
select name as username from user(並不改變原表)
4- 去重
select distinct sex from user
5- 排序
asc:升序
desc:降序
select * from user order by sex asc,age desc
聚合函數
聚合函數也數據DQL中
1- count()查總數
select count(*) from stu where sage>=18;
2- sum()己算指定列的數值和
select sum(sage) from stu;
3- max() / min()最大最小值
slect max(sage) from stu;
4- avg()平均值
select avg(sage) from stu
5- 分組
group by
6- 分頁
limit
約束
1- 主鍵約束(primary key)
1- 方式一:
create table stu1(
id int primary key,
name varchar(50),
);
2-方式二:
create table stu2(
id int,
name varchar(50),
primary key(id,name)
)
3- 方式三:
create table stu3(
id int,
name varchar,
)
alter table stu3 add constraint stu3_id primary key(id)
note:
1- 修改密碼:
set password for root@localhost=password('123456')
2- 在創建虛擬環境時。可在環境變量中新增WORKON_HOME變量名來定義環境變量安裝默認路徑。