目录
一、数据库的基本概念
关系型数据库(RDBMS)
非关系型数据库(NOSQL)
二、MySQL数据类型
三、SQL语句
DML(增删改)
DQL:
条件查询
四、多表查询
一、数据库的基本概念
我们的系统中几乎使用到的一切数据都是存放在数据库中的。数据库分为关系型数据库和非关系型数据库。
关系型数据库(RDBMS)非关系型数据库(NOSQL)优点:
- 将数据库的数据以系统文件的方式,持久存储,将数据存储在硬盘中
- 使用了统一的SQL语句 *** 作数据库
- 可以通过SQL语句完成条件复杂的查询。
- 安全性高
缺点:
- 查询速度较慢,性能较差
典型代表:MySQL数据库
二、MySQL数据类型优点:
- 将数据写入内存中,读取块,性能高,多用于缓存
- key value的形式存储数据,简单易懂
缺点:
- 将数据写入内存中,会随电脑关机而消失,无法长期存储。
- 安全性差,没有事物的概念,无法使用SQL语句
典型代表:Redis(后期会学到)
MySQL中的常用的数据类型:
整型:
int:相当于Java中的int,占4个字节大小,一般用于存储数值较小的值
bigint:相当于Java中的long,占8个字节大小,一般用于存储id值
其他整型不常用
字符串:
varchar:字符串类型,可根据实际存储动态改变占用空间的大小。
char:占用空间大小固定,不常用。
三、SQL语句日期:
datetime:用于记录时间,可参照Java中的Date类。
sql语句分为以下四类
- DDL Data Defintion language 数据库定义语言
- 用于对数据库对象(数据表,数据库,视图,索引)的创建,删除,修改
- DML Data Manipulation language 数据 *** 作语言
- 用于完成对数据表中的数据添加,删除,修改
- DQL Data Query language 数据查询语言
- 用于将数据表中的数据查询出来
- DCL Data Control Laguage 数据控制语言
- 用于完成事务管理等控制型 *** 作
在实际的开发中,DDL,DCL都是不常用的,因为这些都是开放前完成的工作,可以利用图形化界面(Navicat) 完成。而DML和DQL语句(增删改查)是需要掌握的,因为我们要在Java中封装这些SQL,根据用户的 *** 作来执行不同的SQL,所以增删改查的SQL语句是必须掌握的。后期MyBatis-Plus中也会对SQL语句进行简化 *** 作。
DML(增删改)1.增添数据
insert into 表名 values (值1,值2...)
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3),(值1,值2,值3)
2.删除数据
delete from 表名 where 条件
3.修改数据
update 表名 set 字段 = 值 where 条件
DQL:
查询所有数据 :* 为通配符,这里代表所有字段
select * from 表名
查询某个字段
select 字段名 from 表名
查询多个字段
select 字段1,字段2 from 表名
排序: desc 从大到小 acs 从小到大
select * from 表名 order by 字段 desc
条件查询
select * from 表名 where 条件
模糊查询: like关键字。使用模糊查询,可以查询出某字段中,包括这个条件值。
select * from 表名 where 某字段 Like 条件
四、多表查询
多表查询虽然可以在多张表中做查询,但是多表查询的SQL语句逻辑较复杂并且使用到外键,当查询量较大时,会拖垮性能。在一些大的公司里面,都会禁用多表连接查询,原因就是一旦数据量足够大的时候多表连接查询效率会很慢。我们后面会用Java逻辑代替多表查询的逻辑。因此就不再总结,如果想了解,可以看我之前写的这一篇博客
MySQL多表查询小总结
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)