一、什么是数据库
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,类似于excel表格,如存储个人信息时,我们要存储姓名,性别,年龄,家庭地址,身份证号码,这些能表示用户的某些特征,在数据库称之为属性。在我们查找用户信息的时候,如果我们根据姓名、年龄,地址来查找用户信息根本无法获得准确信息,但我们可以根据身份证号码来查找,因为身份证号码是唯一的,而在数据库里我们将能唯一能够表示的称为主键
数据库的特点
- 实现数据库共享
- 减少数据的冗余度
- 数据的独立性
- 数据实现集中控制
- 数据一致性和可维护性,以确保数据的安全性和可靠性
- 故障恢复
二、数据库的使用
进入数据库
1、打开xampp(max版)
2、点击Go To Application 进入网站
3、进入网站后,发现左边侧边栏下面,有一个phpMyAdmin,点击进入,进入之后就会发现他是我们的一个在线数据库
数据库的创建
1、 点击数据库,创建一个新的数据库,数据规则我们一般选择utf8_bin
2、点击进入数据库,创建一个数据表,字段可以选择,里面的名字可以相当于execl表的列名
3、输入完选项后点击执行,则可以看到全部的结构
三、 数据库语句
1、增
点击SQL 可以看到如下图(SQL.pnp)所示的页面,然后我们点击图片中所显示的�INSERT 按钮,会出现如图 sql1.png的显示
图片中所显示的就是对应的 insert into
表格名 (属性1
,属性2
,属性3
,...) values (属性1值,�属性2值,属性3值);insert into 和 values 都是关键字 ,其中表格名后面对应的属性可以省略,系统会根据你的表格结构顺序默认书写,主键不能重复,因此我们通常将它设为自增长,所以不填主键也可以,系统会帮我们自动填写一个数字。
主键的特点:不能为空(非自增情况,且类型为数字类型),不能重复
2、查
同样进入SQL的 我们可以看到 一个SELECT * 和SELECT
查询语句
SELECT 列名1,列名2.....from 表名 where 条件
SELECT 列名1,列名2.....from 表名 如果我们不写条件,那么所有的数据都会被显示出来,
SELECT 列名1,列名2.....from 表名 where 条件, 如果我们查找s_name=“王五”的人 那么条件就是s_name=“王五”,查找到的结果如图sql2.png
如果我们查找s_id=2并且s_name=“王五”,那么可写成
SELECT id,name,sex from Student where s_name="王五" and s_id=2;结果如下
注意:1、我们在查询的时候,SELECT 后的顺序就是查询后显示的顺序
2、没有对应列名的话,查询出来的结果就没有该列
3、列名如果用*代替,代表表格创建时的默认顺序显示
4、where判断条件写法是:列名=“值” and 列名 =“值”
查询语句还有其他的分支
限制语句
limit 1,表示只查询记录中的一条
limit 5,表示查询5条
limit start,size 从第start位置开始查询size条
select 字段 from 表名 where 条件 limit start,size
排序 order by
desc 根据字段的值 降序
ASC 根据字段值 升序
带排序的查询语句
select 字段(*) from 表名 where 条件 order by desc|asc limit start,size
分组统计查询
select count(*) from 表名 //获取所有的行数
select count(*) as num from 表名 // 将count结果作为一个字段名检索
分组 group by 字段名 根据某个字段进行分组查询
例如:select city,count(*) as num from `student` groud by city
//索引可以提高查询速度
//索引会降低插入,修改速度
求和 sum
select sum(age) from `student` //求所有行数的age字段的总和
求平均值 avg()
select avg(age) from `student` //求年龄的平均值
查最大值max()与最小值min()
select max(age) from `student`
select min(age) from `student`
3、更新语句
update 表名 set 字段1=‘新的值’,字段2=‘新的值2’ where 条件//
example:
update Student set �s_sex=“女” where name=‘�王五’;
如果我不写where 判断语句,那么所有的人的性别都会被改成 女的,也就是说如果where没写,则会影响所有的行
注意:
- 如果where判断没写,则会影响所有的行
4、删除语句
delete form 表名 where 条件(如:
name
='ysh')
如果我们删除id=1的数据,如下图
删除数据不是说只是删除id这个列,而是删除id=2的这一个整行
注意:
1、删除是删除一整条数据,不能删除一条数据的某一个列
2、如果不要where判断语句,那么默认删除的就是所有的数据
3、一般删除操作很少做,有备份的话可以