ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Базы данных. Часть Тридцать Третья.


11-04-2015

integer sybase_affected_rows(resource connection)
Функция sybase_affected_rows (листинг 17.53) возвращает количество строк, обработанных оператором DELETE, INSERT или UPDATE. Если необязательный аргумент connection не задан, будет использоваться последнее соединение. Использование этой функции для определения строк, возвращаемых оператором SELECT, не имеет смысла.

Листинг 17.53. Функция sybase_affected_rows

<?php
// соединиться
$Link = @sybase_connect('falcon', 'leon', 'corephp'); //работа с базой данных "sample" @sybase_select_db("sample", $Link); // обновить определенные строки $Query = "UPDATE item " .
"SET Price = Price * 0.9 0 " .
"WHERE Price > 1.0 0 "; $Result = sybase_query($Query, $Link); // получить количество измененных строк $RowsChanged = sybase_affected_rows($Link); print("Обновлено $RowsChanged цен.<br>n"); // закрыть соединение sybase_close($Link);
?>
boolean sybase_close(resource connection)
Функция sybase_close закрывает соединение с базой данных. Строго говоря, ее использование необязательно, так как PHP автоматически закрывает все соединения после выполнения сценария. Если аргумент connection опущен, будет закрыто последнее открытое соединение.
integer sybase_connect(string server, string user, string password, string character_set)
Функция sybase_connect возвращает идентификатор соединения на основании аргументов server, user и password. Аргумент server задает действующее имя сервера, определенное в файле интерфейсов. Соединения, открытые функцией sybase_connect, автоматически закрываются после выполнения сценария. Сравните эту функцию с функцией sybase_pconnect. Необязательный аргумент character_set задает кодировку. 
boolean sybase_data_seek(integer result, integer row)
Функция sybase_data_seek (листинг 17.54) перемещает внутренний указатель на заданную строку. Нумерация строк начинается с нуля. Эта функция используется с функцией sybase_fetch_array, sybase_fetch_object или sybase_fetch_row для произвольного перемещения по результирующему набору.

j Листинг 17.54. Функции sybase_data_seek и sybase_fetch_row
<?php
// соединиться
$Link = @sybase_connect('falcon', 'leon', 'corephp'); //работать с базой данных "sample" @sybase_select_db("sample", $Link); //получить все товары
$Query = "SELECT ID, Name, Price " .
"FROM item ";
$Result = sybase_query($Query, $Link); // перейти на третью строку sybase_data_seek($Result, 2); print("<table border="1">n"); // получить строки
while($Row = sybase_fetch_row($Result))
{
print("<tr>n");
print("<td>" . $Row[0] . "</td>n"); print("<td>" . $Row[1] . "</td>n"); print("<td>" . $Row[2] . "</td>n"); print("</tr>n");
}
print("</table>n"); // закрыть соединение sybase_close($Link);
?>

sybase_deadlock_retry_count(integer retries)
Функция sybase_deadlock_retry_count задает количество попыток при блокировке. По умолчанию PHP предпринимает попытки восстановления бесконечное число раз. Этого же можно добиться, задав для аргумента retries значение -1. Установка значения, равного 0, указывает не предпринимать попыток восстановления. Это значение можно задать в конфигурационном файле php.ini.
array sybase_fetch_array(integer result)
Функция sybase_fetch_array возвращает массив, содержащий все поля для сле­дующей строки. Каждый вызов функции sybase_fetch_array задает следующую строку результирующего набора или возвращает значение FALSE, если строк больше не осталось. Каждому полю соответствуют два элемента. Один проиндексирован по номеру поля, начиная с нуля, другой элемент проиндексирован по имени поля. Сравните эту функцию с функциями sybase_fetch_assoc и sybase_fetch_row. 
array sybase_fetch_assoc(integer result)
Функция sybase_fetch_assoc (листинг 17.55) возвращает массив, содержащий значения всех полей для следующей строки. Каждый вызов функции sybase_fetch_assoc задает следующую строку результирующего набора или воз­вращает значение FALSE, если строк больше не осталось. Каждое поле возвращается проиндексированным по имени поля. Если результат содержит более одного столбца с одинаковыми именами, PHP добавляет в конец индекса число. Например, если у вас имеется три столбца с именами Price, возвращаемая строка будет содержать Price, Price1 и Price2.
Сравните эту функцию с функциями sybase_fetch_array и sybase_fetch_row.

Листинг 17.55. Функции sybase_fetch_assoc и sybase_fetch_field

<?php
// соединиться
$Link = @sybase_connect('falcon', 'leon', 'corephp'); //работать с базой данных "sample" @sybase_select_db("sample", $Link); // получить все товары
$Query = "SELECT ID, Name, Price " .
"FROM item ";
$Result = sybase_query($Query, $Link); print("<table border="1">n"); print("<tr>n");
while($Field = sybase_fetch_field($Result))
{
print("<th>" .
"$Field->name $Field->type($Field->max_length)<br>" . "Numeric: " . ($Field->numeric ? 'YES' : 'NO') . "<br>" . "Source: $Field->column_source" .
"</th>n");
}
print("</tr>n"); // получить строки
while($Row = sybase_fetch_assoc($Result))
{
print("<tr>" . "<td>{$Row['ID']}</td>" . "<td>{$Row['Name']}</td>" . "<td>{$Row['Price']}</td>" .
"</tr>n");
}
print("</table>n"); // закрыть соединение sybase_close($Link);
?>

object sybase_fetch_field(integer result, integer field)
Функция sybase_fetch_field возвращает объект с описанием поля из результирующего набора. Аргумент field является необязательным. Если он опущен, возвращается следующее поле. Объект имеет свойства, описанные в табл. 17.14.
Базы данных

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Базы данных. Часть Тридцать Вторая. PHP. Базы данных. Часть Тридцать Четвёртая.