mirror of
https://github.com/php/doc-ru.git
synced 2025-08-20 23:31:15 +00:00
Updated translation.
git-svn-id: https://svn.php.net/repository/phpdoc/ru/trunk@311474 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
@ -1,116 +1,159 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: shein Status: ready -->
|
||||
<!-- Reviewed: no -->
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: n/a Maintainer: lovchy Status: ready -->
|
||||
<!-- splitted from ./en/functions/mysql.xml, last change in rev 1.2 -->
|
||||
<refentry xml:id="function.mysql-affected-rows" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
<refname>mysql_affected_rows</refname>
|
||||
<refpurpose>Возвращает число затронуиых прошлой операцией рядов.</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Описание</title>
|
||||
<methodsynopsis>
|
||||
<type>int</type><methodname>mysql_affected_rows</methodname>
|
||||
<methodparam choice="opt"><type>resource</type><parameter>link_identifier</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<function>mysql_affected_rows</function> возвращает количество
|
||||
рядов, затронутых последним INSERT, UPDATE, DELETE запросом
|
||||
к серверу, на который ссылается указатель <parameter>link_identifier</parameter>. Если
|
||||
ресурс не указан, функция использует последнее, успешное соединение,
|
||||
выполненное с помощью функции <function>mysql_connect</function>.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
При использовании транзакций <function>mysql_affected_rows</function> надо вызывать
|
||||
после INSERT, UPDATE, DELETE запроса, но не после подтверждения.
|
||||
</para>
|
||||
</note>
|
||||
<para>
|
||||
Если последний запрос был DELETE без указания WHERE и, соответственно,
|
||||
таблица была очищена, функция вернёт ноль (0).
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
При использовании UPDATE, MySQL не обновит колонки, уже содержащие новое
|
||||
значение. Вследствие этого, функция <function>mysql_affected_rows</function>
|
||||
не всегда возвращает количество рядов, подошедших по условия, только
|
||||
количество рядов, обновлённых запросом.
|
||||
</para>
|
||||
</note>
|
||||
<para>
|
||||
<function>mysql_affected_rows</function> не работает с SELECT -- только с
|
||||
запросами, модифицирующими таблицу. Чтобы получить количество рядов,
|
||||
возвращённых SELECT-запросом, используйте функцию
|
||||
<function>mysql_num_rows</function>.
|
||||
</para>
|
||||
<para>
|
||||
Если последний запрос был неудачным, функция вернёт -1.
|
||||
<example>
|
||||
<title>DELETE-запрос</title>
|
||||
<programlisting role="php">
|
||||
<refentry xml:id="function.mysql-affected-rows" xmlns="http://docbook.org/ns/docbook">
|
||||
<refnamediv>
|
||||
<refname>mysql_affected_rows</refname>
|
||||
<refpurpose>Возвращает число затронутых прошлой операцией рядов</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsect1 role="description">
|
||||
&reftitle.description;
|
||||
<methodsynopsis>
|
||||
<type>int</type><methodname>mysql_affected_rows</methodname>
|
||||
<methodparam choice="opt"><type>resource</type><parameter>link_identifier</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Возвращает количество рядов, затронутых последним INSERT, UPDATE,
|
||||
REPLACE или DELETE запросом, связанным с дескриптором
|
||||
<parameter>link_identifier</parameter>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="parameters">
|
||||
&reftitle.parameters;
|
||||
<para>
|
||||
<variablelist>
|
||||
&mysql.linkid.description;
|
||||
</variablelist>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
Возвращает количество измененных записей в случае успеха, и -1
|
||||
в случае если последний запрос не удался.
|
||||
</para>
|
||||
<para>
|
||||
Если последний запрос был DELETE без указания WHERE и, соответственно,
|
||||
таблица была очищена, функция вернёт ноль во всех версиях MySQL
|
||||
до 4.1.2.
|
||||
</para>
|
||||
<para>
|
||||
При использовании UPDATE, MySQL не обновит колонки, уже содержащие новое
|
||||
значение. Вследствие этого, функция <function>mysql_affected_rows</function>
|
||||
не всегда возвращает количество рядов, подошедших под условия, только
|
||||
количество рядов, обновлённых запросом.
|
||||
</para>
|
||||
<para>
|
||||
Запрос REPLACE сначала удаляет запись с указанным первичным ключом,
|
||||
а потом вставляет новую. Данная функция возвращает количество
|
||||
удаленных записей вместе с количеством вставленных.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="examples">
|
||||
&reftitle.examples;
|
||||
<para>
|
||||
<example>
|
||||
<title>Пример использования <function>mysql_affected_rows</function></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?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());
|
||||
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
|
||||
if (!$link) {
|
||||
die('Ошибка соединения: ' . mysql_error());
|
||||
}
|
||||
mysql_select_db('mydb');
|
||||
|
||||
/* без указания WHERE в запросе, функция всегда возвращает 0 */
|
||||
mysql_query("DELETE FROM mytable");
|
||||
printf ("Records deleted: %d\n", mysql_affected_rows());
|
||||
/* здесь функция вернёт корректное число удалённых записей */
|
||||
mysql_query('DELETE FROM mytable WHERE id < 10');
|
||||
printf("Удалено записей: %d\n", mysql_affected_rows());
|
||||
|
||||
/* если WHERE всегда возвращает false, то функция возвращает 0 */
|
||||
mysql_query('DELETE FROM mytable WHERE 0');
|
||||
printf("Удалено записей: %d\n", mysql_affected_rows());
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Вышеописанный пример выдаст следующий результат:
|
||||
</para>
|
||||
<screen>
|
||||
</programlisting>
|
||||
&example.outputs.similar;
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Records deleted: 10
|
||||
Records deleted: 0
|
||||
Удалено записей: 10
|
||||
Удалено записей: 0
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</para>
|
||||
<para>
|
||||
<example>
|
||||
<title>UPDATE-запрос</title>
|
||||
<programlisting role="php">
|
||||
</screen>
|
||||
</example>
|
||||
</para>
|
||||
<para>
|
||||
<example>
|
||||
<title>Пример использования <function>mysql_affected_rows</function> с транзакциями</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
/* соединямеся с базой данных */
|
||||
mysql_pconnect("localhost", "mysql_user", "mysql_password") or
|
||||
die("Could not connect: " . mysql_error());
|
||||
mysql_select_db("mydb");
|
||||
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
|
||||
if (!$link) {
|
||||
die('Ошибка соединения: ' . 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");
|
||||
/* Обновляем ряды */
|
||||
mysql_query("UPDATE mytable SET used=1 WHERE id < 10");
|
||||
printf ("Обновлено записей: %d\n", mysql_affected_rows());
|
||||
mysql_query("COMMIT");
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Вышеописанный пример выдаст следующий результат:
|
||||
</para>
|
||||
<screen>
|
||||
</programlisting>
|
||||
&example.outputs.similar;
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Updated Records: 10
|
||||
Обновлено записей: 10
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</para>
|
||||
<para>
|
||||
См. также <function>mysql_num_rows</function>,
|
||||
<function>mysql_info</function>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
</screen>
|
||||
</example>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="notes">
|
||||
&reftitle.notes;
|
||||
<note>
|
||||
<title>Транзакции</title>
|
||||
<para>
|
||||
При использовании транзакций
|
||||
<function>mysql_affected_rows</function> нужно вызывать
|
||||
после запросов INSERT, UPDATE, DELETE, но не после
|
||||
COMMIT.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<title>Запросы SELECT</title>
|
||||
<para>
|
||||
Чтобы получить количество рядов, возвращённых SELECT-запросом,
|
||||
используйте функцию <function>mysql_num_rows</function>.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<title>Каскадные внешние ключи</title>
|
||||
<para>
|
||||
<function>mysql_affected_rows</function> не подсчитывает ряды,
|
||||
неявно измененные ограничениями ON DELETE CASCADE и/или
|
||||
ON UPDATE CASCADE.
|
||||
</para>
|
||||
</note>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 role="seealso">
|
||||
&reftitle.seealso;
|
||||
<para>
|
||||
<simplelist>
|
||||
<member><function>mysql_num_rows</function></member>
|
||||
<member><function>mysql_info</function></member>
|
||||
</simplelist>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
@ -123,7 +166,7 @@ sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../~/.phpdoc/manual.ced"
|
||||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
|
Reference in New Issue
Block a user