mysql_affected_rows -- Get number of affected rows in previous MySQL operation
Syntax
int mysql_affected_rows ( [resource link_identifier] )
Get the number of affected rows by the last INSERT, UPDATE or DELETE query
associated with link_identifier.
Parameters
link_identifier
The MySQL connection. If the
link identifier is not specified, the last link opened by
mysql_connect() is assumed. If no such link is found, it
will try to create one as if mysql_connect() was called
with no arguments. If by chance no connection is found or established, an
E_WARNING level warning is generated.
Return Values
Returns the number of affected rows on success, and -1 if the last query
failed.
If the last query was a DELETE query with no WHERE clause, all
of the records will have been deleted from the table but this
function will return zero with MySQL versions prior to 4.1.2.
When using UPDATE, MySQL will not update columns where the new value is the
same as the old value. This creates the possibility that
mysql_affected_rows() may not actually equal the number
of rows matched, only the number of rows that were literally affected by
the query.
The REPLACE statement first deletes the record with the same primary key
and then inserts the new record. This function returns the number of
deleted records plus the number of inserted records.
Examples
Example 1. mysql_affected_rows() example
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_select_db('mydb');
/* this should return the correct numbers of deleted records */ mysql_query('DELETE FROM mytable WHERE id < 10'); printf("Records deleted: %d\n", mysql_affected_rows());
/* with a where clause that is never true, it should return 0 */ mysql_query('DELETE FROM mytable WHERE 0'); printf("Records deleted: %d\n", mysql_affected_rows()); ?>
The above example will output
something similar to:
Records deleted: 10
Records deleted: 0
Example 2. mysql_affected_rows() example using transactions
<?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_select_db('mydb');
/* Update records */ mysql_query("UPDATE mytable SET used=1 WHERE id < 10"); printf ("Updated records: %d\n", mysql_affected_rows()); mysql_query("COMMIT"); ?>
The above example will output
something similar to:
Updated Records: 10
Notes
Transactions:
If you are using transactions, you need to call
mysql_affected_rows() after your INSERT, UPDATE, or
DELETE query, not after the COMMIT.
SELECT Statements:
To retrieve the number of rows returned by a SELECT, it is possible to
use mysql_num_rows().
mysql affected rows php code on this is provided for your study purpose, it will guide you to know how create and design a website using php. use it to practice and train your self online
Php mysql affected rows syntax tutorial
php tutorial guide and code design are for easy learning and programming. The code practice section provided at the top is for practising of this syntax. Use the code section up to practice your php programming online. Learning php is very easy, all you need is to use the examples on this site and practice them to perfect your skills.