是的,mysql的触发器可以调用存储过程。在触发器中可以通过使用`CALL`语句来调用存储过程。例如,以下代码演示了一个在触发器中调用存储过程的示例:```sqlDELIMITER //CREATE TRIGGER my_trigger AFTER INSERT ON my_tableFOR EACH ROWBEGIN -- 触发器调用存储过程 CALL my_procedure();END//DELIMITER ;```上述示例中,当`my_table`表在插入操作后触发`AFTER INSERT`事件时,触发器会调用名为`my_procedure`的存储过程。

在MySQL中,是不能为其他数据库创建触发器的。触发器是与特定数据库表关联的对象,用于在表上的特定事件发生时自动执行一系列的操作。因此,触发器是属于特定数据库表的,在该表所属的数据库中定义和管理。
不知道你什么数据库.如果是 Oracle 数据库的话。如果要 改变 INSERT, UPDATE那么用 BEFORE FOR EACH ROW 的触发器。通过在触发器里面, 修改 :new 中的数据, 实现 更改 INSERT UPDATE 的数据。
举个例子来说,就是 插入的时候,数据是1的, 你触发器把1修改成2,最后写到数据库中,结果是2。DELETE 触发器没法 改变, 因为数据是删除的。至于要 取消INSERT, UPDATE以及DELETE语句只需要在触发器中, 抛出异常, 就会自动导致事务回滚,从而取消操作。
例如在 INSERT, UPDATE以及DELETE 的触发器中,只有这么一行-- 错误代码允许的范围是 -20,000~20,999RAISE_APPLICATION_ERROR(-20000, '触发器取消了操作!');那么最后对这个表的所有的 INSERT, UPDATE以及DELETE 操作,都直接因为出错,而无法更新数据库表了。