数据库面试八股总结Day1

本文概述了SQL中的关键概念,如外键用于表间关系,保证数据一致性;存储过程处理复杂逻辑但难以调试;DML与DDL区分在于操作内容;游标和触发器分别用于处理查询结果和数据库事件,各有优缺点。MySQL限制在触发器中调用存储过程。
摘要由CSDN通过智能技术生成

1、外键:使用和其他表建立联系,是其他表的主键。 优点:保证数据库数据的一致性和完整性;级联操作方便,减轻了程序代码量。 缺点:增加复杂性,需要增删改查需要考虑外键约束;增加额外维护外键的工作;分库分表不友好

2、存储过程:SQL语句集合+逻辑控制语句 优点:业务复杂可使用 方便下次调用。缺点:难以调试和扩展,无移植性,消耗数据库资源。

3、DML语句和DDL语句区别:DML为数据库操作语言,对数据库进行操作包括ALTER、CREATE、DROP ,DDL为数据定义语言,可对数据库内部的对象进行增删改查。最大区别DML只对表进行内部数据的操作。DDL涉及到表的定义、结构的修改。DDL多数由数据库管理员所使用。(扩展 :select 不对表进破坏 也叫做DQL数据库查询语言。)

4、游标:查询由select语句检索出来的结果集,select语句不能简单的对结果集进行查询,由此可使用游标。 使用游标步骤:声明游标->打开游标->读取数据->关闭游标->删除游标。

5、触发器(trigger):与表操作有关的对象。当触发器所在的表触发对应事件,调用触发器执行。

使用触发器优点:提供检查数据库完整性的方法;捕获数据库业务逻辑错误;不用等待计划任务运行,因为表中数据的更改之前和之后都会自动调用触发器;对审计表的数据更改有用。

使用触发器缺点:增加数据库服务器的开销;调用和执行SQL触发器不可见,不清楚数据库中执行了什么;SQL触发器只提供了扩展验证,不能替换所有验证。

MySQL不能在触发器中调用存储过程。

触发器类型:

参考:SQL语法基础知识总结 | JavaGuide

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值