关于数据库的几个问题

来源:百度知道 编辑:UC知道 时间:2024/06/19 17:19:03
1 存储过程可以调用存储函数,但是存储函数不能调用存储过程.
2 触发器只能在表中的数据修改时才能被触发.
3 一个触发器可以触发另外一个触发器.
4 在触发器中可以使用rollback语句.
5 触发器可以调用存储过程.
这几个说法对不对
请详细讲解下这几个定义和关系哦

1 存储过程可以调用存储函数,但是存储函数不能调用存储过程.
错,他们之间可以相互调用

2 触发器只能在表中的数据修改时才能被触发.
错 触发器分为插入触发器,修改触发器和删除触发器,也可以三个动作都触发的触发器

3 一个触发器可以触发另外一个触发器.
也算对 当一个表的触发器中修改另外一个表时,会触发那个表的update触发器。但第二个表的触发器实际是那个表的update动作触发的,两个触发器是间接触发。两个触发器不能直接触发

4 在触发器中可以使用rollback语句.
一般来说触发器中不用commit或rollback,因为触发器是由对表的操作引起的,它和对表的操作是同一事务,如果在触发器中用commit或rollback就会导致事务的混乱

5 触发器可以调用存储过程.
对 触发器中调用存储过程会提高系统效率

1.没听说过。可以任意调用,其实SP可以视为一个特殊的FUNC
2.触发器分好几种,你说的只是DDL触发器,而DDL触发器还分INSERT,UPDATE,DELETE。
3.只要写的有关联,会的。
4.可以。
5.是。