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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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