行有这个疑问:计数有多少插入了最后一个SQL查询
INSERT INTO db1.outbox (DestinationNumber, TextDecoded)
SELECT User.CellPhone, '$SMSMessage' as TextDecoded
FROM db2.User
WHERE User.PurchaseDate BETWEEN 2012-01-01 AND 2012-01-31
它多行插入到“发件箱”表。但我不知道插入了多少行。如何从该SQL语法中插入行数?谢谢。
更新 我得到了“-1”作为此命令的结果:
$insertedRows = mysql_query("SELECT ROW_COUNT()");
$rowInserted = mysql_fetch_array($insertedRows);
$rowInserted = $rowInserted[0];
echo $rowInserted;
,但我看到有插在我的桌子27行。我做错了什么?
原因“选择ROW_COUNT()”不为你工作为t在PHP将控制权交还给您时,您的查询不再是最近的查询。 Mysql返回-1,因为PHP已经调用了“SELECT ROW_COUNT()”和“SELECT LAST_INSERT_ID()”。选择信息函数后,“ROW_COUNT()”的结果为-1。这就是为什么你需要使用特殊的PHP变量'''mysql_affected_rows''',它在执行查询后缓存来自“SELECT ROW_COUNT()”的值。 –