Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 向H2数据库中的每个表添加触发器_Mysql_Database_H2 - Fatal编程技术网

Mysql 向H2数据库中的每个表添加触发器

Mysql 向H2数据库中的每个表添加触发器,mysql,database,h2,Mysql,Database,H2,我试图在h2数据库中的每个数据库表中添加一个触发器,但我不知道怎么做 我可以选择数据库中的所有表,但如何循环遍历它们以向每个表应用触发器,如下所示 SELECT * FROM INFORMATION_SCHEMA.TABLES 循环遍历每一个并对每个应用触发器 CREATE TRIGGER MYTRIGGER AFTER INSERT ON TableName FOR EACH ROW CALL\"test.h2Trigger\" 您可以尝试创建一个存储过程,在其中打开一个游标以获

我试图在h2数据库中的每个数据库表中添加一个触发器,但我不知道怎么做

我可以选择数据库中的所有表,但如何循环遍历它们以向每个表应用触发器,如下所示

SELECT * FROM INFORMATION_SCHEMA.TABLES
循环遍历每一个并对每个应用触发器

CREATE TRIGGER MYTRIGGER AFTER INSERT ON TableName FOR EACH ROW      CALL\"test.h2Trigger\"

您可以尝试创建一个存储过程,在其中打开一个游标以获取每个表名,并使用服务器端的prepared语句在每个表上创建触发器。有关如何使用准备好的语句,请参见

如果您使用Perl或php脚本来完成这项工作,会更容易


为什么需要在每个表上创建触发器

我想在数据库中的表上记录活动,所以需要向每个表添加触发器。。。这是一个h2数据库,所以我认为它不允许存储过程?即使允许,它们仍然很昂贵。是的,我知道,但这纯粹是本地环境的事情,不在productionh2中支持某种触发器。检查。如果我将触发器应用于单个表,我面临的问题是如何应用于我数据库中的所有表。。。类似于,为每个应用触发器选择ALL table和