MYSQL数据库基础

MySQL 简介

MySQL:
  原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被昇阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购昇阳微系统公司,MySQL成为Oracle旗下产品。
  MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如维基百科、Google和Facebook等网站。非常流行的开源软件组合LAMP中的“M”指的就是MySQL。
但被甲骨文公司收购后,Oracle大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,因此导致自由软件社群们对于Oracle是否还会持续支持MySQL社群版(MySQL之中唯一的免费版本)有所隐忧,MySQL的创始人麦克尔·维德纽斯以MySQL为基础,成立分支计划MariaDB。而原先一些使用MySQL的开源软件逐渐转向MariaDB或其它的数据库。

数据的时代

        1、相互关联的数据的集合
        2、较少的数据冗余
        3、程序与数据相互独立
        4、保证数据的安全、可靠
        4、最大限度地保证数据的正确性
        5、数据可以并发使用并能同时保证一致性

数据库管理系统

        1、数据库是数据的汇集,它以一定的组织形式存于存储介质上
        2、DBMS是管理数据库的系统软件,它实现数据库系统的各种功能。是数据库系统的核心
        3、DBA:负责数据库的规划、设计、协调、维护和管理等工作
        4、应用程序指以数据库为基础的应用程序

数据库管理系统的基本功能

        1、数据定义
        2、数据处理
        3、数据安全
        4、数据备份

网状数据库

  最早出现的是网状DBMS,1964年通用电气公司的Charles Bachman成功地开发出世界上第一个网状IDS,也是第一个数据库管理系统,IDS 具有数据模式和日志的特征,只能在GE主机运行

层次数据库

层次模型数据库系统是最早研制成功的数据库系统,这种数据库最成功的典型是IMS。
IMS的全称时Information Management System,由IBM公司研制成功。
IMS于1969年投入运行,最早的版本有IMS/360-1和IMS/360-2。较近的版本有IMS/VS DL/1,它是在操作系统DOS/VS(Disk Operation System/Virtual Storage)支持下运行。

数据库系统的架构

        1、单机架构
        2、大型主机/终端架构
        3、主从式架构(C/S)
        4、分布式架构

关系型数据库

        1、关系 :关系就是二维表。并满足如下性质:
                    表中的行、列次序并不重要
        2、行row:表中的每一行,又称为一条记录
        3、列column:表中的每一列,称为属性,字段
        4、主键(Primary key):用于惟一确定一个记录的字段
        5、域domain:属性的取值范围,如,性别只能是‘男’和‘女’两个值
        6、RDBMS:
                        MySQL: MySQL, MariaDB, Percona Server
                        PostgreSQL: 简称为pgsql,EnterpriseDB
                        Oracle
                        MSSQL
                        DB2
        7、数据库排名:
                    https://db-engines.com/en/ranking

数据库排名

MYSQL数据库基础

实体-联系模型E-R

1、实体Entity:
                客观存在并可以相互区分的客观事物或抽象事件称为实体
                在E-R图中用矩形框表示实体,把实体名写在框内
2、属性:
                实体所具有的特征或性质
3、联系:
                联系是数据之间的关联集合,是客观存在的应用语义链                
                实体内部的联系:指组成实体的各属性之间的联系。如职工实体中,职工号和部门经理号之间有一种关联关系
                实体之间的联系:指不同实体之间联系。例:学生选课实体和学生基本信息实体之间
                实体之间的联系用菱形框表示           

联系类型

1、联系的类型
            一对一联系(1:1)
            一对多联系(1:n)
            多对多联系(m:n)
2、数据的操作:
            数据提取:在数据集合中提取感兴趣的内容。SELECT
            数据更新:变更数据库中的数据。INSERT、DELETE、UPDATE
3、数据的约束条件 :是一组完整性规则的集合
            实体(行)完整性 Entity integrity
            域(列)完整性 Domain Integrity
            参考完整性 Referential Integrity

简易数据规划流程

1、第一阶段:收集数据,得到字段
                •收集必要且完整的数据项
                •转换成数据表的字段
2、第二阶段:把字段分类,归入表,建立表的关联
                •关联:表和表间的关系
                •分割数据表并建立关联的优点
                •节省空间
                •减少输入错误
                •方便数据修改
3、第三阶段:
                •规范化数据库

数据库的正规化分析

RDMBS设计范式基础概念
            设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,
            这些不同的规范要求被称为不同范式,各种范式呈递次规范,越高的范式数据库冗余越小
目前关系数据库有六种范式:
            第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、
            巴德斯科范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。
            满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式以次类推。一般数据库只需满足第三范式(3NF)即可

范式

1NF:
        无重复的列,每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。除去同类型的字段,就是无重复的列
        说明:第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库
2NF:
        属性完全依赖于主键,第二范式必须先满足第一范式,要求表中的每个行必须可以被唯一地区分。通常为表加上一个列,以存储各个实例的唯一标识PK,非PK的字段需要与整个PK有直接相关性
3NF:
        属性不依赖于其它非主属性,满足第三范式必须先满足第二范式。第三范式要求一个数据库表中不包含已在其它表中已包含的非主关键字信息,非PK的字段间不能有从属关系

SQL概念

1、SQL: Structure Query Language
            结构化查询语言
            SQL解释器:
            数据存储协议:应用层协议,C/S
2、S:
            server, 监听于套接字,接收并处理客户端的应用请求
3、C:
            Client
            客户端程序接口
                    CLI
                    GUI
            应用编程接口
                    ODBC:Open Database Connectivity
                    JDBC:Java Data Base Connectivity

约束

约束:constraint,表中的数据要遵守的限制
        主键:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行;必须提供数据,即NOT NULL,一个表只能有一个
        惟一键:一个或多个字段的组合,填入的数据必须能在本表中唯一标识本行;允许为NULL,一个表可以存在多个
        外键:一个表中的某字段可填入的数据取决于另一个表的主键或唯一键已有的数据
        检查:字段值在一定范围内        

基本概念

索引:
        将表中的一个或多个字段中的数据复制一份另存,并且按特定次序排序存储
关系运算:
        选择:挑选出符合条件的行
        投影:挑选出需要的字段
        连接:表间字段的关联

数据模型

数据抽象:
        物理层:数据存储格式,即RDBMS在磁盘上如何组织文件
        逻辑层:DBA角度,描述存储什么数据,以及数据间存在什么样的关系
        视图层:用户角度,描述DB中的部分数据
关系模型的分类:
        关系模型
        基于对象的关系模型
        半结构化的关系模型:XML数据

转载于:https://blog.51cto.com/dklwj/2292363

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值