我是新手,正在使用mysql。我有两个表products和customers,两个表中都有一个 DATE 列,每当记录被修改时存储当前时间戳。现在我必须更新两个表中的一行,但我希望CURRENT 时间戳在两个表中存储相同。我发现UPDATE 不会同时使用多个表名。我知道这一定很简单,但我不知道该怎么做。可能是我无法确定这样做的逻辑。感谢您帮助我,并对这个蹩脚的问题感到抱歉:-p
问问题
43 次
2 回答
2
使用程序
delimiter |
CREATE PROCEDURE updatewithtime(IN inputid int)
BEGIN
set @timestamp := now();
update products set date = @imestamp where id = inputid;
update customers set date = @imestamp where id = inputid;
END
|
delimiter ;
你可以这样称呼
call updatewithtime(123);
于 2013-11-13T06:27:41.033 回答
1
UPDATE TableaA a INNER JOIN TableB b ON (a.id= b.id)
SET
//set values
WHERE a.id= 100 AND b.id= 100
注意:不能使用limit
。
我仍然更喜欢 juergen d(存储过程)给出的方式
于 2013-11-13T06:31:26.517 回答