П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 176967 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 74130 раз(а).

Учебник HTML.
Просмотров 73311 раз(а).

Руководство по PHP5.
Просмотров 44189 раз(а).

Хостинг через призму DNS.
Просмотров 50875 раз(а).

Подборка текстов стандартных документов.
Просмотров 44364 раз(а).

Учебник PHP - Самоучитель
Просмотров 50611 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 51027 раз(а).

Внешние атаки...
Просмотров 41337 раз(а).

Учебник PHP.
Просмотров 36566 раз(а).

SSI в примерах.
Просмотров 27439 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Руководство по PHP
Пред. След.

mysql_affected_rows

(PHP 3, PHP 4, PHP 5)

mysql_affected_rows -- Возвращает число затронуиых прошлой операцией рядов.

Описание

int mysql_affected_rows ( [resource link_identifier] )

mysql_affected_rows() возвращает количество рядов, затронутых последним INSERT, UPDATE, DELETE запросом к серверу, на который ссылается указатель link_identifier. Если ресурс не указан, функция использует последнее, успешное соединение, выполненное с помощью функции mysql_connect().

Замечание: При использовании транзакций mysql_affected_rows() надо вызывать после INSERT, UPDATE, DELETE запроса, но не после подтверждения.

Если последний запрос был DELETE без указания WHERE и, соответственно, таблица была очищена, функция вернёт ноль (0).

Замечание: При использовании UPDATE, MySQL не обновит колонки, уже содержащие новое значение. Вследствие этого, функция mysql_affected_rows() не всегда возвращает количество рядов, подошедших по условия, только количество рядов, обновлённых запросом.

mysql_affected_rows() не работает с SELECT -- только с запросами, модифицирующими таблицу. Чтобы получить количество рядов, возвращённых SELECT-запросом, используйте функцию mysql_num_rows().

Если последний запрос был неудачным, функция вернёт -1.

Пример 1. DELETE-запрос

<?php
    
/* соединямеся с базой данных */
    
mysql_pconnect("localhost", "mysql_user", "mysql_password") or
        die(
"Could not connect: " . mysql_error());
    
mysql_select_db("mydb");
        
    
/* здесь функция вернёт корректное число удалённых записей */
    
mysql_query("DELETE FROM mytable WHERE id < 10");
    
printf ("Records deleted: %d\n", mysql_affected_rows());

    
/* без указания WHERE в запросе, функция всегда возвращает 0  */
    
mysql_query("DELETE FROM mytable");
    
printf ("Records deleted: %d\n", mysql_affected_rows());
?>

Вышеописанный пример выдаст следующий результат:

Records deleted: 10
Records deleted: 0

Пример 2. UPDATE-запрос

<?php
    
/* соединямеся с базой данных */
    
mysql_pconnect("localhost", "mysql_user", "mysql_password") or
        die(
"Could not connect: " . mysql_error());
    
mysql_select_db("mydb");

    
/* Обновляем ряды */
    
mysql_query("UPDATE mytable SET used=1 WHERE id < 10");
    
printf ("Updated records: %d\n", mysql_affected_rows());
    
mysql_query("COMMIT");
?>

Вышеописанный пример выдаст следующий результат:

Updated Records: 10

См. также mysql_num_rows(), mysql_info().


Пред. Начало След.
Функции СУБД MySQL Уровень выше mysql_change_user


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru