MySQL删除前保存行

时间:2014-01-09 11:55:08

标签: mysql triggers

我有一些表格:

Table1
id | some_field_1 | some_field_2
---|--------------|-------------
 1 |    data1     |    data2
 2 |    data3     |    data4

Table2
id | othr_field_1 | othr_field_2 | othr_field_3
---|--------------|--------------|-------------
 1 |    data5     |    data6     |   data7
 2 |    data8     |    data9     |   data10

我不知道字段名称和表格数。

还有history表:

id | table_name | table_id | data
---|------------|----------|-----

现在,在从表格中删除行之前,我需要将其保存在history表格中,以便data字段以JSONXML等字符串格式保存我的行等

可以使用PHP,但可以使用BEFORE DELETE触发器吗?

类似的东西:

DELIMITER $$
CREATE TRIGGER trg
BEFORE DELETE ON table1
FOR EACH ROW
BEGIN

        INSERT INTO history
        (table_name, table_id, data)
        values ( 'table1', OLD.id, SOME_FUNCTION(OLD));

END
$$

需要什么而不是SOME_FUNCTION

0 个答案:

没有答案