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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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