首页 >> 大全

MySQL数据表管理(上)

2023-10-03 大全 31 作者:考证青年

一、创建数据表

1.数据表的设计及ER图

(1)数据库设计的基本步骤:

① 需求分析阶段:分析客户的业务和数据处理需求

② 概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整

③ 详细设计阶段:将E-R图转换成多张表,进行逻辑设计,并应用数据库设计的三大范式进行审核

④ 代码编写阶段:选择具体数据库进行物理实现,并编写代码实现前端应用

(2)模拟QQ游戏大厅项目:

① 需求分析:系统需要记录哪些信息?

② 数据表:游戏表、玩家表、分数表

③ 每个表的字段:

游戏表(编号、名称、类型、难度)

玩家表(QQ号、昵称、性别、生日、手机号)

分数表(游戏编号、玩家QQ、得分)

(3)E-R(-)实体关系图:

符号

含义

实体,一般是名词

属性,一般是名词

关系,一般是动词

QQ游戏大厅项目E-R图:

_数据库管理表_mysql管理数据库

2.使用范式检查数据表设计合理性

(1)什么是范式?

设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。(范式就是一种规范,我们用这种规范去衡量我们数据库设计的到底好不好,衡量的是数据库是否有冗余这个指标)

(2)Dr E.F.Codd最初定义了规范化的几个级别,范式用以定义具有最小冗余的表结构。

(3)第一范式(1st NF)

如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式(1st NF)。(第一范式是确保每列的原子性)

玩家QQ

地区

12301

中国北京

12302

美国纽约

12303

英国伦敦

12304

日本东京

玩家QQ

国家

城市

12301

中国

北京

12302

美国

纽约

12303

英国

伦敦

12304

日本

东京

(2)第二范式(2st NF)

如果一个关系满足1NF,并且除了主键以外的其他列,都完全依赖于该主键,则满足第二范式(2NF),(第二范式要求每个表只描述一件事情)

数据库管理表_mysql管理数据库_

(3)第三范式(3rd NF)

如果一个关系满足2NF,并且除了主键以外的其它列都不传递依赖于主键列,则满足第三范式(3NF)。(第三范式要求表中不存在冗余字段)

数据库管理表__mysql管理数据库

3.使用命令窗口创建数据表

使用 TABLE 表名;来创建数据表。

如: table

[not null],

[not null]

);

4.为列添加主键约束

(1)约束的概念和作用:约束保证了数据的完整性,相当于数据的检察官,用于检查数据是否正确,其作用就是保证数据的正确性。

(2)主键约束作用:保证实体的完整性。即在某一列上如果我们添加了主键约束,那么这个列就不能出现重复的值,并且这个列上也不能出现空值。

例:为玩家表的玩家QQ这一列添加主键约束

table user

(20) not null key,

(50) not null,

char(2) not null '男',

date not null,

char(11) not null

);

5.为列添加检查约束(对于MySQL数据库来说检查约束不起作用)

(1)检查约束作用:保证域完整性。(即保证某一列上的数据必须符合某种格式或者符合某个范围)

例:为游戏表添加检查约束

table game

int not null ,

(50) not null,

(20) not null

);

6.为列添加外键约束

(1)外键约束的作用:保证引用完整性。

例:为分数表添加外键约束:

table score

int not null key,

score int,

(20) not null user(),

int not null game()

);

7.为列添加默认约束

(1)概念:就是为某一列填写一个默认值,当我们这个列上没有值的时候,默认为其填上一种类型的值。作用:保证域完整性

如:为玩家表的这一列添加默认约束。见主键约束。

8.为列添加自增列约束

(1)作用:保证实体完整性。(因为这个列上的值,自动增加,既然是自动增加就不会有重复的值,默认从1开始自增)

如:为游戏表添加自增列,见游戏表。

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了