mysql_affected_rows()


my_ulonglong mysql_affected_rows(MYSQL *mysql)

Descrição

Retorna o número de registros alterados pelo último UPDATE, deletados elo último DELETE ou inseridos pelo último INSERT. Pode ser chamado imediatamente após mysql_query() para instruções UPDATE, DELETE, ou INSERT. Para instruções SELECT, mysql_affected_rows() funciona como mysql_num_rows().

Valor Retornado

Um inteiro maior que zero indica o número de registros afetados ou recuperados. Zero indica que nenhum registro foi atualizado por uma instrução UPDATE, nenhuma linha foi encontrada pela cláusula WHERE na consulta ou a consulta ainda não foi executada. -1 indica que a consulta retornou um erro ou que, para uma consulta SELECT, mysql_affected_rows() foi chamado antes da chamada mysql_store_result().

Erros

Nenhum.

Exemplo

mysql_query(&mysql,'UPDATE products SET cost=cost*1.25 WHERE group=10');
printf('%ld products updated',(long) mysql_affected_rows(&mysql));

Se se for especificado o parâmetro CLIENT_FOUND_ROWS ao conectar no mysqld, mysql_affected_rows() retornará o número de linhas encontardos pela cláusula WHERE para a instrução UPDATE.

Note que quando for utilizado um comando REPLACE, mysql_affected_rows() retornará 2 se o novo registro substituir um mais antigo. Isto é porque neste caso um registro foi inserido e depois os registros duplicados foram deletados.

Retornar