boolean ocifetchinto(resource statement, reference data, integer mode)
Функция ocifetchinto (листинг 17.37) предназначена для того, чтобы получить строку данных из выполненного оператора и поместить ее в массив. Аргумент data должен содержать массив, по умолчанию индексируемый целыми числами, которые начинаются с единицы. Необязательный аргумент mode управляет индексированием массивов PHP. Для того чтобы получить необходимые возможности, можно добавить константы, приведенные в табл. 17.11.
Листинг 17.37. Функция ocifetchinto
<?php
// подключиться к базе данных $Link = ocilogon("scott", "tiger"); // создать запрос $Query = "SELECT * " .
"FROM emp ";
// проанализировать запрос
$Statement = ociparse($Link, $Query);
// выполнить запрос
ociexecute($Statement);
// начало HTML- таблицы
print('<table border="1">');
// выбрать каждую строку
while(ocifetchinto($Statement, $Column,
OCI_NUM | OCI_RETURN_NULLS | OCI_RETURN_LOBS))
{
print("<tr><td>" .
implode('</td><td>', $Column) .
"</td></tr>n");
}
// закрыть таблицу
print("</table>n");
// освободить оператор
ocifreestatement($Statement);
// закрыть соединение
ocilogoff($Link);
?>
integer ocifetchstatement(resource statement, reference data)
Функция ocifetchstatement (листинг 17.38) помещает в аргумент data массив с результирующими данными и возвращает количество строк. Массив data проиндексирован по именам столбцов. Каждый элемент сам по себе является массивом, проиндексированным целыми числами, начиная с нуля. Каждый элемент этого подмассива соответствует строке.
| Листинг 17.38. Функция ocifetchstatement_
<?php
// подключиться к базе данных $Link = ocilogon("scott", "tiger"); // собрать запрос $Query = "SELECT * " .
"FROM emp ";
// проанализировать запрос
$Statement = ociparse($Link, $Query);
// выполнить запрос
ociexecute($Statement);
print('<table border="1">');
// выбрать все строки в массив
$RowCount = ocifetchstatement($Statement, $Data); print("$RowCount Rows<br>"); foreach($Data as $Column) {
print("<tr><td>" .
implode('</td><td>', $Column) .
"</td></tr>n");
}
print("</table>n"); // освободить оператор ocifreestatement($Statement); // закрыть соединение ocilogoff($Link);
?>
boolean ocifreecollection(object collection)
Функция ocifreecollection освобождает память, зарезервированную коллекцией.
boolean ocifreecursor(integer cursor)
Функция ocifreecursor предназначена для освобождения памяти, занятой курсором, созданным функцией ocinewcursor.
boolean ocifreedesc(object lob)
Функция ocifreedesc освобождает память, зарезервированную дескриптором большого объекта.
boolean ocifreestatement(resource statement)
Функция ocifreestatement используется для освобождения памяти, задействованной оператором. Аргумент statement представляет собой целое число, возвращаемое функцией ociparse.
ociinternaldebug(boolean on)
Функция ociinternaldebug управляет генерированием отладочной информации. Отладочный вывод отправляется в браузер. Конечно, по умолчанию он отключен.
string ociloadlob(object lob)
Функция ociloadlob возвращает содержимое большого объекта.
boolean ocilogoff(integer link)
Функция ocilogoff закрывает соединение.
integer ocilogon(string user, string password, string sid)
Функция ocilogon устанавливает соединение с базой данных Oracle. Идентификатор, который она возвращает, используется при создании операторов, курсоров и дескрипторов. Необходимо задавать аргументы user и password. Необязательный аргумент sid задает сервер, и в том случае, когда он отсутствует, используется переменная среды ORACLE_SID.
При попытке создать следующее соединение с ранее открытой базой данных, оно создано не будет. Это значит, что все операторы commit или rollback воздействуют на все операторы, созданные сценарием. Для того чтобы создать новое соединение, необходимо воспользоваться оператором ocinlogon.
boolean ocinewcollection(resource connection, string tdo, string schema)
Функция ocinewcollection создает новое соединение и требует для передачи аргумента TDO (Type Descriptor Object - объект дескриптора типа). Кроме того, с помощью аргумента schema можно задать соответствующую схему.
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
PHP. Базы данных. Часть Двадцать Четвёртая.
02-04-2015
<< Предыдущая статья | Следующая статья >> |
PHP. Базы данных. Часть Двадцать Третья. | PHP. Базы данных. Часть Двадцать Пятая. |