[英]update two tables at once
我的 MySQL 版本使用 5.1.41-3ubuntu12.10。
UPDATE profiledata SET aboutyou = '$aboutyou', quotes = '$quotes'
WHERE uid = '$sess_uid'
和
UPDATE profileprivacy
SET aboutyouPrivacy = '$aboutyouPrivacy', quotesPrivacy = '$quotesPrivacy'
WHERE uid='$sess_uid'
$sess_uid 对两者都是一样的。 我想知道是否可以将两个 MySQL 查询合并到一个 mysql_query 中。
我在想它会像SET profiledata.aboutyou = 'Just a developer.'
,不太确定。
您可以使用这样的连接:
$query = "UPDATE profiledata t1
JOIN profileprivacy t2 ON (t1.uid = t2.uid)
SET t1.aboutyou = '$aboutyou',
t1.quotes = '$quotes',
t2.aboutyouPrivacy = '$aboutyouPrivacy',
t2.quotesPrivacy = '$quotesPrivacy'
WHERE t1.uid = '$sess_uid'";
MySQL does have multi-table update support: http://dev.mysql.com/doc/refman/5.0/en/update.html .
UPDATE profiledata, profileprivacy
SET aboutYou = ..., aboutyouPrivacy = ...
WHERE (profiledata.uid = $sess_uid) OR (aboutyouPrivacy.uid = $sess_uid)
或类似的东西应该可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.