mysql数据库

1、什么是数据库(DB,database)

  • 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
  • 每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。
  • 我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。
  • 所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。
  • RDBMS 即关系数据库管理系统(Relational Database Management System)的特点:

1.数据以表格的形式出现
2.每行为各种记录名称
3.每列为记录名称所对应的数据域
4.许多的行和列组成一张表单
5.若干的表单组成database

  • 关系型数据库:mysql、oracle、sqlserver
  • 通过表和表之间,行和列之间的关系进行数据的存储,学员信息表,考勤表…
    非关系型数据库(NoSQL)not only
  • 非关系型数据库:Redis、MongDB
  • 非关系型数据库,对象存储,通过对象的自身属性来决定。

2、数据库管理系统(DBMS)

  • 数据库管理系统 ( DataBase Management System )
  • 数据库管理软件 , 科学组织和存储数据 , 高效地获取和维护数据
  • 我们要学习的MySQL应该算是一个数据库管理系统

3、MySQL数据库

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

4、RDBMS 术语

在这里插入图片描述

  • 数据库: 数据库是一些关联表的集合
  • 数据表:表是数据的矩阵,在一个数据库中表看起来限一个简单的电子表格
  • 列:一列包含了相同类型的数据
  • 行:是一组相关的记录,例如一条用户订阅的数据
  • 冗余:存储两倍的数据,降低了性能,提高了安全性
  • 主键:主键是唯一的,一个数据表中只能包含一个主键。你可以使用主键来查询数据
  • 外键:用来关联两个表
  • 复合键:将多个列作为一个索引键
  • 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。

在这里插入图片描述

  • 表头:每一列的名称
  • 列:具有相同数据类型的数据的集合
  • 行:每一行用来描述某条记录的具体信息
  • 值:行的具体信息,每个值必须与该列的数据类型相同
  • 键:键的值在每一列中具有唯一性

5、DML数据操作语言(insert、update、delete)

数据库意义:存储数据,数据管理

1、insert添加

  • 语法:insert into 表名([字段一], [字段二])values(‘值1’),(‘值2’)
//插入语句(添加)
insert into `grade`(`gradename`)VALUES('大四')
//如果不写表的字段,他就会一一匹配,写插入语句,数据和字段一定要一一对应
insert into `grade` VALUES '大三'
//插入多个字段('a'),('b')
insert into `grade`(`gradename`) 
VALUES('大二','大一')
//插入一条数据
insert into `grade`(`name`,`pwd`,`sex`)
VALUES('小明''123','男')
//插入多条数据
insert into `grade`(`name`,`pwd`,`sex`)
VALUES('小李','111','女'),('小王','222','男')

  • 注意事项:
  • 1、字段和字段之间使用逗号隔开
  • 2、字段可以省略,但后边的值必须一一对应
  • 3、可以同时插入多条数据,但是VALUES后边的值需要使用逗号隔开

2、update修改

  • 语法:update 修改谁(条件) set 原来的值=新值
//修改学院名字,指定条件
update `student` set `name` = '狂神' where id = 1;
//不指定条件,会修改所有表
update `student` set `name` = '长江7号'
//修改多个属性,逗号隔开
update `student` set `name` = '狂神',`email` = '1234@qq.com' where id = 1;
  • 条件:where 子句 运算符 id 等于 某个值,大于某个值,在某个区间内修改

3、delete删除

  • 语法L: delete from 表名 where
  • delete和truncate(清空表)的区别,
  • 相同:都能删除数据,都不会删除表数据
  • 不同:TRUNCATE 重新设置 自增长,计数器回归零,不会影响事务
//删除数据(避免这么写,会全部删除)
delete from `student` where id = 1;
//删除表
TRUNCATE table `test`

6、DQL(database query language)查询数据

1、select简单查询

在这里插入图片描述

//查询全部的学生
select * from student
//查询指定字段
select `StudntNo`,`StudentName` from student
//别名,给结果起一个名字 AS
select `StudentNo` AS 学号,`StudentName` AS 学生姓名 from student AS s
//函数Concat(a,b)
select CONCAT('姓名:',StudentName) AS 新名字 from student

  • 所有查询语句都用Select
  • 数据库中最核心的语言
  • 使用频率最高的语言
  • 简单的查询,复杂的查询,他都能做
  • 语法:SELECT 字段 … FROM 表
  • 去重:distinct
  • 作用:去除select查询出来的结果中重复的数据,重复的数据只显示一条
//查询一下有哪些同学参加了考试,成绩

//查询全部的考试成绩
select * from result
//查询有哪些同学参加了考试
select `studentNo` from result
//发现重复数据,去重
select distinct `studentNo` from result

2、where条件子句

  • 作用:检索数据中符合条件的值
  • 逻辑运算符
    运算符 语法 结果
    and && a and b a&&b 逻辑与
    or || a or b a||b 逻辑或
    Not != not a !a 逻辑非
查询考试成绩在95分到100分之间,and &&
SELECT `StduentNo`,`StudentResult` 
	FROM result 
		WHERE StudentResult >=95 AND StudentResult<=100
模糊查询(区间)
SELECT `StduentNo`,`StudentResult` 
	FROM result
		WHERE StudentResult BETWEEN 95 AND 100
除了1000号学生之外的同学成绩
SELECT `StduentNo`,`StudentResult` 
	FROM result 
		WHERE NOT StudentNo = 1000
除了1000号学生之外的同学成绩
SELECT &#
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值