数据库分类
关系型数据库:Mysql SqlServer Oracle
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
非关系型数据库:MongoDB Cassandra Redis
优势快
缺点:
1、不提供sql支持,学习和使用成本较高;
2、无事务处理;
3、数据结构相对复杂,复杂查询方面稍欠。
三大数据库:Mysql、SqlServer(windows系统)、Oracle后两个收费
中间件:
第三方:
数据库命令
修改密码
show databases 查看当前所有的数据库
create database 创建数据库
drop database 删除数据库
show tables 查看当前数据库中的表
create table 创建表
增加 insert into() value() (可以一次添加多个数据)
查 select * from
删除 delete from (可全部删除,可部分删除,)
改 update
被设为主键的属性,创建时,必须创建,不能重复
primary key 设置主键
auto_increment 自动递增id
uuid() 自动设置不同的id
desc 查看表属性
alter add 增加表属性
alter drop 删除表属性
数据库三大范式
第一范式:列不可再分
第二范式:属性完全依赖于主键
第三范式:属性不能依赖其他非主属性
多表联查
设置别名
多表连立使左边的表完整
子查询
查看每个分支人数
看看分支大于某个数 havings
order by;
order by desc;
查看结果去重 SELECT distinct university from user_profile;
limit 取出特定的行(分页)