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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по 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