如何编写查询或程序

时间:2013-12-10 08:35:16

标签: mysql sql

我有两个表一次主表另一个审计表用于备份过程如果仅在审计中删除记录...如果记录从审计手段中删除然后在主表上更新状态..... 例如 main

的表结构
id name status
==============
1 raj    1
2 arivu  0

例如审核

的表结构
id name status
==============
1 raj    1
2 arivu  0

此处状态1处于活动状态,0处于非活动状态

如果我删除 审核表中的记录 然后输出像 例如审计

的表结构
id name status
==============
1 raj    1

和 主表 例如审计表的表结构

id name status
==============
1 raj    1
2 arivu  2

如果从审计表中删除任何记录,则记录状态为0或1,只需将其更新为2

现在我写了解决问题的程序,但我不知道如何在php页面上调用该程序 我的程序就像

DELIMITER $$

DROP程序如果存在users $$ CREATE DEFINER = root @ localhost PROCEDURE users(在id int(25)中) BEGIN

从person_history中删除,其中id = id;

更新person set active ='2',其中id = id;

END $$

DELIMITER;

1 个答案:

答案 0 :(得分:0)

删除审核表中的记录之前,将主表中的状态更新为2,然后从审核表中删除记录。这将解决您的问题。

例如:

<强>更新

UPDATE main 
SET    status = 2 
WHERE  id not in (SELECT id FROM audit)