MySQL基础快速⼊门知识总结(附思维导图)
⽬录
前⾔
⼀.数据库基础知识
1.什么是数据库2.数据库的分类3.数据库的常⽤语⾔4.数据库的常⽤操作⽅式5.MySQL的架构⼆.数据库的增删改查
1.创建数据库2.查询数据库3.修改数据库4.删除数据库三.表的增删改查
1.创建表2.查询表3.修改表4.删除表四.记录的增删改查
1.插⼊记录2.查询记录(最常⽤)3.修改记录4.删除记录五.字段类型
1.数字型1.1整数型1.2⼩数型2.⽂本型3.⽇期时间六.字段属性总结
前⾔
本⽂是我这段时间⾃学MySQL之后,⾃⼰总结的⼀些MySQL的⼊门基础知识.我⾃⼰⽤的是MySQL 5.7.
⼀.数据库基础知识
1.什么是数据库
数据库是按照⼀定数据结构,进⾏组织,存储,管理数据的仓库数据的仓库,是⼀种对⼤量信息进⾏管理的⾼效解决⽅案.数据库系统DBS=数据库DB+数据库管理系统DBMS.
2.数据库的分类
数据库的分为关系型数据库和分关系型数据库.
关系型:是建⽴在关系模型上的数据库,关系模型顾名思义就是⼆维表模型,⽤来记录实体和实体与实体信息之间的关系信息.常见的关系型数据库有Oracle ,MySQL ,SQL Server.
⾮关系型数据库:不建⽴在关系模型上的数据库.主要有MongoDB Redis
3.数据库的常⽤语⾔
数据库系统DBS
结构化查询语⾔SQL数据库DB
数据库管理系统DBMS表table
⾏row => 记录record列column => 字段field
4.数据库的常⽤操作⽅式
DOS命令:
连接远程主机:mysql -h 主机名/IP地址 -P端⼝号 -u ⽤户名 -p 密码连接本机主机:mysql -u⽤户名 -p密码客户端(可视化软件):Navicat代码:
Web⽹页:PHPMyAdmin
5.MySQL的架构
C/S架构:
服务端管理和存储数据 客户端发送操作请求
⼆.数据库的增删改查
1.创建数据库
#创建数据库的语法
create database `库名` charset=utf8/gbk;
创建数据库前,需要先连接进数据库,可以⽤⾃⼰的本地数据库练习.
2.查询数据库
#查询所有数据库show databases;
#按条件查询like ,其中%表⽰任意多个字符,-表⽰任意⼀个字符.create databases like '%-';#查询建库语句
show create database;
3.修改数据库
#修改数据库(仅能修改选项,也就是字符集这些)alter database `库名` [新选项];
4.删除数据库
#删除数据库(语法很简单,但后果很严重.⼀般你也没有权限,哈哈.)drop database `库名`;
三.表的增删改查
1.创建表
#创建表前,先指定数据库use `指定库名`;#创建表的
create table `表名`(
`字段1` 字段1类型 字段1属性,...
`字段N` 字段N类型 字段N属性);[选项]
其中的选项主要包括三⼤类:
1. 字符集 charset=utf8 / GBK …
2. 数据引擎 engine=innodb / mysiam3. 备注 comment='‘备注内容''
其它的字段类型和字段属性,后⾯有详细写到.
2.查询表
#查询所有表show tables;#条件查询
show tables like '%-';#查询表结构desc `表名`;#查询建表语句
show create table `表名`;
3.修改表
#修改表选项
alter table `表名` [新选项];#修改表名
rename table `旧表命` to `新表名`;#修改表内的字段
alter table `表名` change `旧字段名` `新字段名` 新字段类型;#添加新字段到字段末尾
alter table `表名` add `新字段名` 类型 属性;#添加字段到对应字段后
alter table `表名` add `新字段名` 类型 属性 after `对应字段`#添加字段到最前⾯
alter table `表名` add `新字段名` 类型 属性 first;
4.删除表
#如果表存在,则删除表,否则报错drop table [if exists] `表名`;
四.记录的增删改查
1.插⼊记录
#插⼊记录
insert into `表名`(`字段1`,...`字段`) values('值1',...,'值N');#当⼀次传⼊所有值时,可以省不写字段insert into `表名` values('值1',...,'值N');#当需⼀次传⼊多条记录时
insert into `表名`(`字段1`,...`字段`) values('值1',...,'值N'),('值1',...,'值N'),...,
('值1',...,'值N');
#当需⼀次传⼊多条记录,且字段全传⼊时
insert into `student` values(值列表1),(值列表2),(值列表n);
2.查询记录(最常⽤)
#查询语法
select [选型] 字段列表 as 别名 from `表名` where 条件表达式;
1、条件表达式:逻辑运算符:and or not⽐较运算符:+ - * / < > = !=2、选项:
all:查询所有,不写默认就是所有
distinct:去重.重复指查询后的数据⾥,记录的所有字段全部相同,才认定为重复.as:别名.给查询后的字段设置⼀个别名,⽅便查阅.常见的聚合函数:count(),Max(),Min(),Sum(),avg()3、连表查询 join
1.内连接 inner join
#将参与连接的两个表中符合连接条件的记录查询出来,不符合的过滤掉.select * form `表1` inner join `表2` on 连接条件;2.左外连接 left Join
#将参与连接的左表中即使不能匹配连接条件的记录也会查询出来,右表不符合的过滤掉select * from `表1` left join `表2` on 连接条件;3.右外连接 right join
#将参与连接的右表中即使不能匹配连接条件的记录也会查询出来,左表不符合的过滤掉select * from `表1` right join `表2` on 连接条件;
3.修改记录
#语法
update `表名` set `字段`='新值' where 条件表达式;
4.删除记录
#语法
delete from `表名` where 条件表达式;
五.字段类型
1.数字型
1.1整数型
tinyint:占⽤⼀个字节,⼀共能表⽰256个数
有符号:-128~127⽆符号:0~255int:占⽤4个字节
有符号:-21亿~21亿⽆字符:0~42亿1.2⼩数型浮点数:
float(M,D):单精度浮点数double(M,D):双精度浮点数定点数:
decimal(M,D):数据不会丢失的⼩数类型,常⽤于记录货币
2.⽂本型
1. char(M):定长字符,M表⽰最⼤的字符数.优势为运算速度快.常⽤在255个字符内的固定长度的字符.如:⾝份证,电话号码等.2. varchar(M):变长字符,M表⽰最⼤的字符数.优势为节省空间.常⽤在255个字符以内,长度不确定的字符.3. text:常⽤在256个字符以上的⽂本中
3.⽇期时间
1. datetime:固定的⽇期时间
2. timestamp:时间戳:当新增记录或更新记录时⾃动更新为当前系统时间,⽤于记录最后⼀次修改的时间或新插⼊记录的时间
六.字段属性
1. not null:设置该字段的值不能为空,不写就是默认可以为空
2. default 默认值:设置⼀个默认值,没有数据传⼊就是使⽤默认值.有数据传⼊则使⽤传⼊的值3. comment:备注⽤汉字备注字段,⽅便后期维护
4. unique key:唯⼀值该字段的值不能重复,但可以为空5. primary key 主键:
⽤于唯⼀标识⼀条记录⼀个表最能只能有⼀个主键不能为空不能重复
6. auto_increment ⾃动增长:在新插⼊记录时,⾃动在本字段最⼤值的基础上加1,条件本字段的类型必须为整数型.常与主键⼀起使⽤,但不是必须与主键⼀起使⽤.
总结
到此这篇关于MySQL基础快速⼊门知识总结的⽂章就介绍到这了,更多相关MySQL基础⼊门内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!