时间:2021-07-01 10:21:17 帮助过:26人阅读
Mysql:开源、关系型、ISAM存储引擎核心算法前身
Oracle:关系型数据库管理系统,技术领先、大型企业
DB2:支持多媒体、WEB关系型数据库
SQLserver:微软产品
PostgreSQL:唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性自由软件
2.数据库软件应该为数据库管理系统,数据库是通过数据库管库系统创建和操作的容器
数据管理:对各种数据进行分类、组织、编码、存储、检索和维护
人工管理阶段—文件系统管理阶段—数据库系统阶段
3.数据库发展阶段:
层次数据库和网状数据库技术阶段:层次代表IMS、网状代表IDS
关系数据库技术阶段:oracle、mysql、sql server、DB2、SyByse、InFormix
后关系数据库技术阶段:面向对象数据库ORDBMS、结构化数据库技术NOSQL
4. SQL(Structure Query Language)结构化查询语言:
数据定义语言(Data Definition Language,DDL)、
数据操作语言(Data Manipulation Language,DML)、
数据控制语言(Data Control Language,DCL)
5. Mysql数据库:
1)系统数据库:记录一些必需的信息,用户不能更改
Information_scherma:数据对象信息,如用户表信息、列信息、权限信息、字符集信息和分区信息等
Performance_schema:数据库服务器性能参数
mysql:用户权限信息
test:测试数据库
2)用户数据库:
6.数据库对象:指存储、管理和使用数据的不同结构形式
表、视图、存储过程、函数、触发器、事件等
7. SQL语句中的DDL和DML(不包含SELECT)语句执行成功后都会显示Query OK
SQL语句中可以用”;” ”\g””\G” 表示语句结束。\G更美观
8.存储引擎:以插件形式被Mysql引入
1)指定表的类型(如何存储和索引数据、是否支持事务)
2)决定表在计算机内的存储方式
9.Mysql5.5支持九种存储引擎:FEDERATED、MRG_MYISAM、MYSIAM、BLACKHOLE、CSV、MEMORY、ARCHIVE、InnoDB、PERFORMANCE_SCHEMA
MYSIAM:不支持事务、外键,速度快
InnoDB: 事务(即提交、回滚和崩溃恢复功能的事务安装),磁盘占用大
频繁更新删除操作,对事务完整性要求高,需要实现并发控制
MEMORY:内存存储数据,访问速度快,无安全保障
10. 存储引擎Engine参数:
Support:是否支持该存储引擎,yes/no,default表示默认
Comment:关于存储引擎的评论
Transactions:是否支持事务
XA:存储引擎支持的分布式是否符合XA规范
Savepoints:是否支持事务处理中的保存点
11. 修改默认存储引擎:C:\Program Files\MySQL\MySQL Server5.1 \my.ini配置文件中[mysqld]
[client]
port=3306
[mysql]
default-character-set=utf8
[mysqld]
port=3306
basedir="C:/ProgramFiles/MySQL/MySQL Server 5.1/"
datadir="C:/ProgramData/MySQL/MySQLServer 5.1/Data/"
character-set-server=utf8
default-storage-engine=INNODB
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
12. Mysql数据类型
整数类型:标准(SMAILLINT、INT),扩展(TINYINT、MEDIUMINT、BIGINT)
浮点型:FLOAT、DOUBLE
定点型:DECIMAL更高精度,金融货币优选
位类型:BIT(字节数M,1~8,存储空间由精度决定)
日期和时间类型:DATE、DATETIME、TIMESTAMP、TIME、YEAR
字符串类型:CHAR系列、TSXT系列、BINARY系列、BLOB系列
13.表中的数据库对象包含列、索引(顺序、快速访问途径、监督)和触发器(事务命令集)。
14.表数据约束:对表中所存储的数据是否合法进行检查
完整性约束:数据准确性和一致性
非空约束(NOT NULL,NK)、
字段默认值约束(DEFAULT)、
唯一约束(UNIQUE,UK)、
主键约束(PRIMARY KEY,PK)、
字段值自动增加约束(AUTO_INCREMENT)
外键约束(FOREIGNKEY,FK)
15.索引:创建在数据库对象表上,包含表中按照一定顺序排序的一类或多列字段
提高查询速度,保证字段的唯一性,从而实现数据库表的完整性
16. 索引的存储类型:B型树索引(BTREE)、哈希索引(HASH)
InnoDB和MYISAM存储类型支持默认为BTREE,MEMORY存储引擎支持HASH
17. Mysql创建方式:创建表时创建索引、在已存在的表上创建索引、通过SQL语句ALTER TABLE创建索引
18.Mysql支持6种索引:
普通索引:不附加任何限制条件(唯一、非空等限制),可创建在任何数据类型字段
唯一索引:限制索引的值必须是唯一的
全文索引:主要关联在CHAR、VARCHAR和TEXT字段上
快速查询数据量较大的字符串类型的字段
Mysql3.23.23开始支持,只能在存储引擎为MyISAM的数据库表上创建全文索引
单列索引
多列索引
空间索引
19.视图:虚表,内容和真实表相似。但视图并不在数据库中以存储的数据值形式存在
行和列数据来自自定义的查询所引用基本表,并且在具体引用视图时动态生成
20.视图特点:数据可以来自不同的表,是表的抽象和在逻辑上建立的新关系
由基本表(实表)产生的虚表
建立和删除不影响基本表
对视图内容的更新(添删改)直接影响基本表
21.视图本质:封装复杂的查询语句,方便重复使用和安全
22.视图实现信息隐藏,多个地方重复实现该功能(只需查询视图,不要,每次都编写视图封装的详细查询语句)
23.触发器:用来实现由一些表事件触发的某个操作,由事件来触发、激活而实现执行
24.触发器TRIGGER类似于编程中的函数,需要声明、执行,
25.创建多条执行的触发器多条命令trigger_STMT要用;隔开,为避免和结束时所用分号重复,可使用关键字DELIMITER语句,例如:
DELIMITER $$
多条语句触发器
$$
DELIMITER;
26.排序查询数据:字段值为NULL,则该值为最小值
在降序排序显示在最后一行,在升序排序中显示在第一行
27.AVG()函数统计平均值:忽略null,但是不忽略0
28.Mysql所支持的统计函数,所操作的表中没有任何数据记录,则COUNT()函数返回数据0,而其它函数返回数据为null。
29.分组数据查询:分组所依据的字段上的值一定要具有重复值
30.关键字GROUP BY 单独使用,默认查询出每个分组中