mysql_affected_rows(MYSQL * MYSQL)
mysql_affected_rows ()
可以在执行语句后立即调用mysql_real_query ()
或mysql_query ()
.它返回最后一个语句更改、删除或插入的行数更新
,删除
,或插入
.为选择
语句,mysql_affected_rows ()
就像mysql_num_rows ()
.
为更新
语句中,受影响的行数默认为实际更改的行数。如果指定CLIENT_FOUND_ROWS
旗帜mysql_real_connect ()
连接到时mysqld,受影响的行数为行数”发现”;也就是说,与在哪里
条款。
为取代
语句中,如果新行替换了旧行,则affected-rows值为2,因为在本例中,在删除副本之后插入了一行。
为插入……重复密钥更新
语句,如果将该行作为新行插入,则每行受影响的行值为1,如果更新了现有行,则为2,如果将现有行设置为当前值则为0。如果指定CLIENT_FOUND_ROWS
标志,如果将现有行设置为当前值,则受影响的行值为1(而不是0)。
后调用
语句用于存储过程,mysql_affected_rows ()
返回它将为过程中执行的最后一条语句返回的值,或0
如果该语句返回-1
.在该过程中,您可以使用ROW_COUNT ()
,以获取单个语句的受影响行值。
在MySQL 5.6,mysql_affected_rows ()
为更广泛的语句返回有意义的值。具体操作请参见章节描述ROW_COUNT ()
在信息功能.
大于零的整数表示受影响或检索的行数。0表示没有更新记录更新
语句中,没有匹配的行在哪里
子句,或者尚未执行任何查询。-1表示查询返回错误,或者对于选择
查询mysql_affected_rows ()
在打电话之前被打过吗mysql_store_result ()
.
因为mysql_affected_rows ()
返回无符号值,您可以通过将返回值与进行比较来检查是否为-1(my_ulonglong) 1
(或(my_ulonglong) ~ 0
,两者相等)。