Обновление до английской версии

This commit is contained in:
Sergey Panteleev
2023-07-04 10:46:18 +03:00
parent ff3b80ea3f
commit f7a693ce3d
8 changed files with 325 additions and 58 deletions

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: d4d537e6a2a9e11b24d5a42e8be7b2d4763c3f0e Maintainer: mch Status: ready -->
<!-- EN-Revision: 968c2bc60de3e93d7f38be0b9d2d1b9685a16ea7 Maintainer: mch Status: ready -->
<!-- Reviewed: no -->
<section xml:id="pdo-mysql.constants" xmlns="http://docbook.org/ns/docbook">
&reftitle.constants;
@ -8,26 +8,27 @@
<varlistentry xml:id="pdo.constants.mysql-attr-use-buffered-query">
<term>
<constant>PDO::MYSQL_ATTR_USE_BUFFERED_QUERY</constant>
(<type>int</type>)
(<type>bool</type>)
</term>
<listitem>
<simpara>
Если этот атрибут установлен в &true; в
<classname>PDOStatement</classname>, MySQL-драйвер
будет использовать буферизованные версии API MySQL.
Если вы пишете переносимый на другие библиотеки код,
вы должны использовать <function>PDOStatement::fetchAll</function>.
По умолчанию все запросы выполняются
в <link linkend="mysqlinfo.concepts.buffering">буферизованном режиме</link>.
Если этот атрибут установлен в значение &false;
для объекта <classname>PDO</classname>,
драйвер MySQL будет использовать небуферизованный режим.
</simpara>
<para>
<example><title>Буферизация запросов в MySQL</title>
<example><title>Установка небуферизованного режима MySQL</title>
<programlisting role="php">
<![CDATA[
<?php
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
$stmt = $db->prepare('select * from foo',
array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));
} else {
die("приложение работает только с mysql; Следует использовать \$stmt->fetchAll() вместо этого");
$pdo = new PDO("mysql:host=localhost;dbname=world", 'my_user', 'my_password');
$pdo->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
$unbufferedResult = $pdo->query("SELECT Name FROM City");
foreach ($unbufferedResult as $row) {
echo $row['Name'] . PHP_EOL;
}
?>
]]>