MySQL的一些概念

数据库与服务器、客户端的层次关系

关于数据库

程序中需要存储数据的方式:

1 变量(列表、元组、集合、字典、嵌套)

2 外存(文件)(*.ini)

3 表格、Excel(*.xls、*.xlsx、*.csv)

4 结构化数据库

数据库中的基本概念

记录(Record):数据库中的一行

字段(Field):数据库中的一列

实体(Entity):现实中客观存在并可以被区分的事物。比如:学生、课程

属性(Attribute):实体锁具有的特征。比如:对于学生实体,所体现的属性有:学号、姓名、年龄、性别

关系(RelationShip):实体与实体之间的依赖。包括:一对一、一对多、多对多。

以上三者(实体、属性、关系)可以组成ER图(实体关系图)

通过Visio的数据库模型图建立表:

建表的时候需要考虑范式的约束

一般有如下范式:1NF 2NF 3NF BCNF 4NF 5NF

1NF:属性不可分


姓名


电话号码


年龄


座机


手机


张三


020-84444444


13777777777


23


李四


020-85555555


13888888888


34

如上,因为电话属性可以拆分为座机和手机,所以不满足1NF,修改如下:


姓名


座机


手机


年龄


张三


020-84444444


13777777777


23


李四


020-85555555


13888888888


34

2NF:符合1NF。非主属性完全依赖于关键字


学号


姓名


课程编号


考试成绩


101


张三


201


73


102


李四


202


53

该表中的依赖关系:

学号——姓名

(学号、课程编号)——考试成绩

该表的关键字是:(学号、课程编号)

这里的非主属性姓名依赖于学号,是关键字的一部分,而不是全部。所以不满足2NF

需要拆分成两个表


学号


姓名


101


张三


102


李四


学号


课程编号


考试成绩


101


201


73


102


202


53

这样就满足2NF了

3NF:符合1NF和2NF,并且消除传递依赖


学号


课程编号


老师


职称


101(张三)


201(高等数学)


张老湿


砖家


102(李四)


202(大学英语)


陈教授


叫兽


103(王五)


202(大学英语)


陈教授


叫兽

显然满足1NF

该表的关键字是:(学号、课程编号)。后面的非主属性完全依赖于关键字,所以满足2NF

(学号、课程编号)——上课老师

老师——职称

像这种A依赖于B,B依赖于C的设计,就称为传递依赖,是不满足3NF

需要拆分成两个表


学号


课程编号


老师


101(张三)


201(高等数学)


张老湿


102(李四)


202(大学英语)


陈教授


103(王五)


202(大学英语)


陈教授


老师


职称


张老湿


砖家


陈教授


叫兽

这样就满足了3NF的标准了

后面还有BCNF、4NF、5NF。但是我们设计数据库一般要求达到3NF即可

原文地址:https://www.cnblogs.com/kumata/p/9594030.html

时间: 2024-10-12 10:53:16

MySQL的一些概念的相关文章

理解MySQL——架构与概念

理解MySQL——架构与概念 写在前面:最早接触的MySQL是在三年前,那时候MySQL还是4.x版本,很 多功能都不支持,比如,存储过程,视图,触发器,更别说分布式事务等复杂特性了.但从5.0(2005年10月)开始,MySQL渐渐步入企业级数据库的 行列了:复制.集群.分区.分布式事务,这些企业级的特性,使得现在的MySQL,完全可以应用于企业级应用环境(很多互联网公司都用其作为数据库服务 器,尽管节约成本是一个因素,但是没有强大功能作后盾,则是不可想象的).虽然,MySQL还有很多不足,比

MySQL数据库的概念

学习数据库的一些知识,写写博客方便梳理以及巩固知识.关于什么是数据库就举一个例子来说明,说的可能不够准确,只要明白一个大概的意思就够了,深刻的学习还是要去看书的. 讲讲生活中有关数据的例子:在一个中学,记录学生的基本信息,记录什么呢?记录学生的姓名.年龄.故乡.传统的方法是在一张纸上画表格(见下面),然后填入相应的数据.那么一张这样的表就记录着一个班级中所有学生的姓名.年龄以及故乡.假设初一年级有10个班,初二年级有8个班,初三年级有15个班,那么初一年级就会有10张这样的表,初二年级就会有8张

九、mysql触发器的概念

1.所谓触发器,就是指设置好某个表的某个操作(insert ,update ,delete)时候,同时触发的一个操作: 一般用来,比如说删除文章主栏目,那么可以利用触发器删除这个文章栏目下的所有文章 2.创建触发器 delimiter $$ create trigger ins_1 before insert on tt1 for each row BEGIN insert into tt2 values (now()); END; $$ 以上触发器,大概意思就是:当tt1有进行插入操作之间,即

jsp/servlet/mysql/linux基本概念和操作

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC" } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC"; min-height: 18.0px } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px "PingFang SC Semibo

Mysql锁机制--概念、分类及基础命令

Mysql 系列文章主页 =============== 1 概念 在 Java 程序中,当多线程并发访问某个资源的时候,如果有非线程安全的操作,那么需要通过加锁来保护之.同理,在 Mysql 中,如果也有多个线程.多个事务并发访问某些资源(比如写同一行记录)时,也需要锁来保护,以确保数据的正确性. 2 分类 从对数据的操作类型来分: 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响 写锁(排它锁):当前写操作没有完成前,会阻塞其它写和读操作 从对数据操作的粒度分: 表锁:偏

Mysql主从同步-概念和原理介绍

Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起

MySQL的基本概念与操作

数据库的基本概念什么是数据库?用于存储和管理数据的仓库.数据库的特点:持久化存储数据的.其实数据库就是一个文件系统方便存储和管理数据使用了统一的方式操作数据库 – SQL数据库的分类:数据库根据存储采用的数据结构的不同可以分为许多种,其中包含早期的层次式数据库.网络式数据库.目前占市场主流的是关系型数据库.当然还有非关系(NoSQL)型数据库(键值对数据库,例如:MongoDB.Redis)等其他类型的数据库常见的关系型数据库:SQL Server : 微软提供(收费.Java中使用不多)Ora

MySQL的基本概念和数据操作

1.连接服务器 数据库是CS模式的软件,所以要连接数据库必须要有客户端软件.MySQL数据库默认端口号是3306         1.1window界面连接服务器         1.2通过web窗体连接         1.3命令行连接 host -h 主机 port -P 端口号 (大写) user -u 用户名 password -p 密码 (小写) 2.数据库基本概念        2.1数据库.表相关   数据库:数据库中存放的是表,一个数据库中可以存放多个表 表:表是用来存放数据的.

mysql数据库-基本概念介绍

目录 mysql数据库数据库是什么为什么要使用数据库数据库的分类什么是数据库引擎?数据库重要概念mysql数据库数据库是什么存储数的的仓库 列表,字典....等等,都是内存中的,其缺点:断点即消失, 优点:速度快文件存储, 缺点: 速度慢, 优点: 可以实现永久保存本质就是一套基于CS结构的,客户端和服务端程序,最终的数据存储在服务器端的磁盘中 为什么要使用数据库直接使用文件存储带来的问题 速度慢 我们的程序将来可能分布在不同的机器上 分布式: 每个服务器提供不同的服务,有时候某个业务流程可能会

MySQL关系数据概念

数据库,我们知道是存放数据的仓库,数据可以是文字,图像,音视频(像这种比较大的数据通常在数据库中保存的是其对应的存储地址),那么关系型数据库又是什么呢,简单说来,就是数据库中各种数据之间的关系,这种关系应该如何建立,我们需要先掌握一些基本概念. 一.表格 关系数据库由'关系'组成,这些关系通常称为'表格'. Customers(顾客)     CustomerID      Name     Address      City       1     张学友      地球      小城 二.