数据库简介
1.什么是数据库
英文: database
保存和管理数据的仓库就是数据库。
专门用来管理数据的软件
什么是数据?
文件,图片,视频,订单,用户名,密码等等。
这些数据都需要有专门的地方来保存和管理。
2.两大阵营-数据库分类
- 关系型数据库,代表产品:
- MySQL
- Oracle
- Sql server
- DB2
- 非关系型数据库
- redis 键值存储数据库
- HBaise列存储数据库
- mongodb 面向文档数据库
- neo4j 图形数据库
- Elasticsearch 搜索引擎存储
参考:数据库使用排名 https://db-engines.com/en/ranking
3.理解关系型数据库
在关系型数据库中,存在三级关系:
- 数据库
- 数据表
- 字段
类比excel:
- 每一列都是一类数据 —
字段
- 每一行代表一条数据 —
记录
数据库 | excel文件 |
---|---|
数据库 | excel文件 |
数据表 | excel文件中的某一个sheet |
表结构:字段 | sheet中的表头:列 |
4.MySQL简介
MySQL
是一个关系型数据库管理系统,由瑞典MySQL AB
公司开发,目前属于Oracle
旗下产品 。MySQL
所使用的SQL 语言
是用于访问数据库的最常用标准化语言。
- 体积小、速度快、总体拥有成本低,一般中小型网站的开发都选择 MySQL 作为网站数据库。
- 搭配
PHP
和Apache
可组成良好的开发环境。
3p技术:php,asp,jsp
当我们安装完MySQL后,我们的计算机又变成服务器了,不过不是Web服务器,而是MySQL数据库服务器了。
操作数据库-用navicat
新建数据库
在弹出的窗口中填写数据库名即可。
点击确定之后,会在左侧的数据库列中看到上面创建成功的数据库。
新建数据表 点开数据库 右击表格
点击 “新建表”, 然后在开始设置字段
主键: 作用是区别一条数据和其它数据。(它相当于人的身份证号)
设置字段完成之后,点击上图左上角所示的保存按钮,就会进一步弹出对话框,让填写表的名字。
我们填入user
编辑字段
添加数据
一条内容输入完成后,按下tab,会自动进入下一条记录的输入
学习使用SQL语句
结构化查询语言(Structured Query Language
)简称SQL,用来操作关系型数据库:
- 是一种数据库查询和程序设计语言,用来存取数据以及查询、更新、和管理关系型数据库。
.sql
是数据库脚本文件的扩展名。
最常用的用于数据操作的sql语句有四类,分别对应对数据的四种操作:
- 增(
create
)(例如:用户注册) - 删(
delete
) (例如:删除订单) - 改(
update
) (例如:修改密码) - 查(
select
,read
) (例如:信息搜索)
在navicat中运行sql - 添加数据
打开sql编辑区 进行代码书写 (记得运行)
1.学习sql
中的insert into
命令
格式:
insert into 表名(字段名1,字段名2,....) values (值1,值2....)
注意:
- 字段的顺序要和值的顺序是完全匹配的
- 字段列表可以不与真实数据表中的字段完全相等,
- 可以省略一些不必要的字段
- 顺序与不需要与定义表时的顺序一致
- 如果是字符串类型的字段,其值要加"",
- 如果是数值类型的字符串,其值不需要加“”
示例:
insert into stu (sex, weight, name) values ('男', 60, '庞凯')
2.sql-delete
语句-删除数据
格式
delete from 表名 where 删除条件
注意:不指定条件将删除所有数据
示例
-- 删除id为14的同学
delete from stu where id=14
-- 删除的时候,不加条件,将删除stu表中的全部记录
delete from stu
3.sql-update
语句-修改数据
格式
update 表名 set 字段1=值1, 字段2=值2,... where 修改条件
注意:
- 要修改的值使用键值对来表示
- 多个字段用,分隔
- 不指定条件,将修改当前表中全部的记录
示例
-- 修改id为1的同学的年龄为53
update stu set age=53 where id = 1
-- 修改id为1的同学的年龄为35,身高为160
update stu set age=35,height=160 where id = 1
-- 如果修改的时候,不加条件,则会修改全部的数据
update stu set weight = 60
4.sql-select
-语句-数据查询
作用
把数据从数据库查出来
格式
SELECT 字段名1, 字段名2, ..... FROM 表名 WHERE <条件表达式>
示例
# 查询部分字段
SELECT id,name,age FROM stu
# 查询所有字段
SELECT * FROM stu
# 带条件的查询
SELECT * FROM 表名 WHERE 条件1 and 条件2
5.where子句
select field1, field2... from 表名
查询表中的所有数据
where 可以使用条件来筛选查询出的结果
-- 查询所有的学生
select * from stu
-- 查询所有学生的id,name,height
select id,name,height from stu
-- 带条件的查询
select * from stu where 条件
-- 查询所有的男同学
select * from stu where sex='男'
-- 查询id为2的男同学
select * from stu where id=2
-- 查询年龄大于50的同学
select * from stu where age > 50
-- 查询年龄大于50岁的男同学
select * from stu where age>50 and sex='男'
-- 查询年龄在30~60之间的同学,包括30和60
select * from stu where age>=30 and age<=60
select * from stu where age between 30 and 60