【发布时间】:2011-10-13 14:39:16
【问题描述】:
我要更新很多数据库行,我想知道我更新了多少行。
示例:如果我的数据库包含以下 4 行
INSERT INTO `drink` VALUES (1, 'Non-Alcoholic', 'tea');
INSERT INTO `drink` VALUES (2, 'Non-Alcoholic', 'tea');
INSERT INTO `drink` VALUES (3, 'Non-Alcoholic', 'coffee');
INSERT INTO `drink` VALUES (4, 'Non-Alcoholic', 'pepsi');
我将使用以下内容进行更新
$sql= "update drink set cat='tea' WHERE cat= 'Non-Alcoholic' AND subcat = 'tea'";
很明显它只会更新 2 行
INSERT INTO `drink` VALUES (1, 'tea', 'tea');
INSERT INTO `drink` VALUES (2, 'tea', 'tea');
INSERT INTO `drink` VALUES (3,'Non-Alcoholic', 'coffee');
INSERT INTO `drink` VALUES (4,'Non-Alcoholic', 'pepsi');
现在我的问题是我如何知道它更新了多少行,我希望它显示为消息或其他任何内容,但我必须知道它。
所以任何想法或如何去做 谢谢你的帮助
【问题讨论】:
-
你是如何在你的 php 中调用它的?
-
请记住,在 mysql 中匹配的行数并不总是更新的行数。例如,在上面的更新语句中,如果您使用“... set cat='Non-Alcoholic' ...”,匹配的行数为 2,但受影响的行数为 0。