网易MySQL微专业学习笔记(二)-Mysql数据对象

2018-09-19 18:20:55 浏览数 (1)

前言

这个系列属于个人学习网易云课堂MySQL数据库工程师微专业的相关课程过程中的笔记,本篇为其“MySQL数据库对象与应用”中的MySQL数据类型相关笔记。

所有笔记可能不定期更新,发布时不一定为最终版。

正文

常见数据库对象

DataBase/Schema

Table

Index

View/Trigger/Function/Procedure

库表行层级关系

一个DataBase对应一个Schema

一个Schema包含一个或多个表

一个表里面包含一个或多个字段

一个表里包含一条或多条记录

一个表包含一个或多个索引

多Database用途

业务的隔离

资源的隔离

表上常用的数据对象

索引

约束

视图、触发器、函数、存储过程

数据库索引(Index )

索引就是数据库中数据的目录

索引和数据主要是两个对象

索引主要是用来提高数据库的查询效率

数据库中的数据变更同样需要同步索引数据的变更

UNIQUE 唯一索引

FULLTEXT 全文检索索引,使用不多仅支持my引擎

SPATIAL 地理位置索引,地理位置精度比较差。

  • 唯一约束是一种特殊的索引
  • 唯一约束可以是一个或多个字段
  • 唯一约束可以在创建表时创建好,也可以后面再补上。
  • 主键也是一种唯一约束。

使用外键的注意事项

必须是INNODB表,Myisam和其他引擎不支持外键

相互约束的字段类型必须要一样。

主表的约束字段要求有索引。

约束的名称必须唯一,即使不在一张表上。

view 视图

作用

视图将一组查询语句构成的结果集,是一种虚拟结构,并不是实际数据。

视图能简化数据库的访问,能够将多个查询语句结构化为一个虚拟结构。

视图可以隐藏数据库后端表结构,提高数据库的安全性。

视图也是一种权限管理,只对用户提供部分数据。

Trigger

俗称触发器, 指可以在数据写入表a之前或者之后可以做一些其他动作。

使用Trigger在每次更新用户表的时候出发更新积分表---(实例)

0 人点赞