MySQL-其他(六)

什么是mysql的完整性约束
完整性约束是对字段的限制 从而符合字段达到我们期望的效果 比如字段含有默认值 不能是null 主要有唯一自增主键外键约束

Mysql的几种链接方式
内连接 左链接 右链接

超建 候选键 主键 外键分别是社么
超建 在关系中能唯一标识元组的属性集成为关系模式的超建 一个属性可以作为一个超建 多个属性组合在一起也可以作为一个超建 超建包含候选键和主键
候选键 最小超建
主键 数据对象唯一标识的数据列 一个数据列只能有一个主键
外键 在表中存在另一个表的主键

社么是视图 以及视图的使用场景有哪些
视图是一个虚拟表 具有和物理相同的功能 没有物理存储 可以对视图进行 增改查操作 视图通常有一个表或者多个表的行或列的子集 对视图修改不影响基本表 他使得我们获取数据更容易 相比多表查询
使用场景
只希望用户查看特定的列
来源于多个表可以创建视图获取我们需要的信息 简化操作

drop、delete与truncate的区别?
Drop直接删除表有关的一切
Truncate 删除表中的所有数据
Delete语句执行删除的过程是每次从表中删除一行
速度上是drop truncate delete

什么是存储过程?有哪些优缺点?
存储过程是预编译的SQL语句
优点
存储过程是一个预编译的代码块 执行效率高
存储过程在服务器运行 减少客户端的压力
允许模块化程序设计 只需创建一次过程 以后程序中调用过程任意次
可以在一定程度上确保数据安全
缺点
可移植性不灵活
不便于调试
没有办法应用于缓存
无法适用数据库的切割

数据库的三大范式
第一范式:

确保每列的原子性 如果每列都是不可再分的最小数据单元则满足第一范式.

例如:顾客表(姓名、编号、地址、……)其中"地址"列还可以细分为国家、省、市、区等。

第二范式:

在第一范式的基础上更进一层,目标是确保表中的每列都和主键相关 如果一个关系满足第一范式,并且除了主键以外的其它列,都依赖于该主键,则满足第二范式.

例如:订单表(订单编号、产品编号、定购日期、价格、……),"订单编号"为主键,"产品编号"和主键列没有直接的关系,即"产品编号"列不依赖于主键列,应删除该列。

第三范式:

在第二范式的基础上更进一层,目标是确保每列都和主键列直接相关,而不是间接相关(另外非主键列必须直接依赖于主键,不能存在传递依赖).如果一个关系满足第二范式,并且不依赖于除了主键以外的其它列,则满足第三范式.

例如:订单表(订单编号,定购日期,顾客编号,顾客姓名,……),初看该表没有问题,满足第二范式,每列都和主键列"订单编号"相关,再细看你会发现"顾客姓名"和"顾客
编号"相关,"顾客编号"和"订单编号"又相关,最后经过传递依赖,"顾客姓名"也和"订单编号"相关。为了满足第三范式,应去掉"顾客姓名"列,放入客户表中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值