mysql-1

mysql的增删改查,高级操作(视图、触发器、函数、存储过程等),优化、部署

  1. 数据库:database 存储数据的仓库
    数据库:高效的存储和处理数据的介质(介质主要是两种:磁盘和内存)
  2. 分类:数据库存储介质的不同,进行了分类,分为两类“关系型数据库(sql)”和非关系型数据库(NoSQL: Not Only SQL)
  3. 不同的数据库阵营中的产品有哪些
    关系型数据库
  • 大型:Oracle,DB2
  • 中型:sql-sercer mysql等
  • 小型:access等
    非关系型数据库:memcached,mongodb,redis(同步到磁盘)
  1. 两种数据库阵营的区别?
    关系型数据高:安全(保存磁盘基本不会丢失,)容易理解,比较浪费空间(二维表)
    非关系型数据库:效率高,不安全(断电丢失)

关系型数据库

  1. 关系型数据库:是一种建立在关系模型(数学模型)上的数据库

关系模型包含3个结构:
- 数据结构:数据存储的问题,二维表(有行和列))
- 操作指令集合:所有SQL语句
- 完整性约束:表内数据约束表与表之间约束(外键)
2. 关系型数据库的设计
从需要存储的数据需求分析,如果是一类数据(实体)应该设计成一张二维表:表是由表头(字段名:用来规定数据的名字)和数据组成部分(实际存储的数据单元)
在这里插入图片描述
学生表
班级表

解决办法:在学生表中增加一个字段来指向班级(必须能够唯一的找到一个班级信息)
学生实体和班级实体的关联关系:实体一天实体之间的关系

关键字说明

关键字不区分大小写 关键字推荐大写
数据库 database
数据库系统 DBS (database system) 是一种虚拟系统,将多种内容关联起来的称呼
DBS=DBMS+DB
DBMS: Database Management System 数据库管理系统,专门管理数据库
DBA Database Administrator 数据库管理员

行/记录:row/record,本质是一个东西,都是指表中的一行(一条纪律):行是从结构角度出发,记录是从数据角度出发
列/字段:column/field,本质是一个东西

SQL

SQL:stuctured Query Language 结构化查询语言(数据以查询为主,半分之99是在进行查询)
SQL分为三个部分
- DDL Data Defintion Language 数据定义语言,用来维护存储数据的结构,代表指令:create,drop,alter等
- DML Data mainpulation Language 数据操作语言,用来对数据进行操作(数据表中的内容),代表指令:insert,delete,update等:其中DML内部又单独进行了一个分类:DQL(data Query Language 数据查询语言,如select)
- DCL Data control Language,数据控制语言,主要是负责全县管理(用户),代表指令:grant,recoke等
sql是关系型数据库的操作指令,sql是一种约束,但不强制(类似w3c):不同的数据库产品(如Oracle,mysql)可能内部会有一些细微的区别
Mysql数据库
Mysql数据库是一种c/s结构的软件:客户端/服务端,若想访问服务器必须通过客户端(服务器一直运行,客户端在需要使用的时候运行)

交互方式
1. 客户单连接认证:连接服务器,认证身份:mysql.exe-hPup在这里插入图片描述
2. 客户端发送sql指令
3. 服务器接收sql指令:处理sql指令:返回操作结果
4. 客户端接收结果:显示结果
5. 断开连接(释放资源,服务器并发限制 )在这里插入图片描述

mysql服务器对象
没有办法完全了解服务器内部的内容:只能祖略的去分析数据库服务器的内部的结构
将mysql服务器内部对象分成四层:系统(DBMS)-》数据库(DB)-》数据表(table)-》字段(field)

sql基本操作

基本操作:CGUD
将SQL 的基本操作根据操作对象进行分类,分成三类:库操作。表操作(字段),数据操作

库操作

对数据库的增删改查
新增数据库
基本语法 create database 数据库名字[库选项];创建数据库
库选项:用来约束数据库。分为两个选项
字符集设定:charset/character set 具体字符集(数据存储的编码格式):常用字符集,gbk和utf-8
校对集设定:collate 集体校对集(数据比较的规则)
cls 清屏
在这里插入图片描述
注释: # 注释
– 注释 带空格
/注释/
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
char 的存取速度快
在这里插入图片描述

字段名的修饰(列明)

unsigned 无符号
auto_increment (自增)
default 默认值
comment(字段解释说明)
not null null 非空

unique(唯一索引)
index(普通索引)
key
primary key (主键)

auto_increment 必须制定 primary key

!= <> 不等于
在这里插入图片描述