mSQL

Данная группа функций позволяет работать с серверами БД mSQL. Для того чтобы их можно было использовать, РНР нужно скомпилировать с параметром —with-msql[=dir], где можно указать каталог размещения mSQL (по умолчанию это /usr/local/Hughes).
Документацию но mSQL можно найти по адресу http://www.hughes. \ com.au/.
msql_connect
Подключение к серверу mSQL
int msql_connect ([string hostname [, string hostname[:port] [, string user-name [, string passworo>]
Возвращает дескриптор подключения к БД или FALSE — при ошибке.
Если не указывается имя хоста, то производится локальное подключение.
Если функция повторно вызывается с теми же аргументами, новое подключение не создается, а возвращается идентификатор уже имеющегося.
В конце сценария принято закрывать подключение функцией msql_ close(), но этого можно и не делать, поскольку РНР автоматически закрывает все (неустойчивые) подключения при завершении сценария.
См. также: msql_pconnect(), msql_close().
msql_pconnect
Создание устойчивого подключения к серверу mSQL
int msqlj>connect ([string hostname [, string hostname[:port] [, string username [, string password>)
Возвращает дескриптор подключения к БД или FALSE — при ошибке. msql_pconnect() действует подобно msql_connect() с двумя отличиями:
Перед подключением функция пытается проверить, имеется ли уже открытое (устойчивое) подключение с параметрами (имя сервера, пользователя и пароль), аналогичными указанным. Если такое подключение обнаруживается, то возвращается его идентификатор вместо создания нового подключения.
При завершении сценария подключение не закрывается, а остается действительным для дальнейшего использования. (Функция msql_ close() не может закрыть подключения, созданные с помощью msql_ pconnect().)
msql_close
Отключение от сервера mSQL int msq]_close (int link_identifier)
Возвращает TRUE или FALSE — при ошибке.
Идентификатор закрываемого подключения указывается в аргументе link_identifier; если его не указывать, то закрывается последнее открытое данным сценарием подключение.
Фактически использование данной функции не является обязательным, так как РНР автоматически закрывает все незакрытые неустойчивые подключения при завершении сценария.
Обратите внимание, что устойчивые подключения, созданные функцией msql_pconnect(), не закрываются.
См. также: msql_connect() и msql_pconnect().
msql_list_dbs
Получение списка БД на сервере mSQL
int msq"Mist_dbs(void);
Возвращает набор записей, содержащий список имеющихся БД на сервере. Используйте функцию msql_dbname(), чтобы получить элементы этого списка.
msql_dbname
Получение имени БД mSQL
string msql_dbname (int query_identifier. int i)
Функция используется для обработки набора записей query_identifier, возвращенного msqlJIistdbs(); в аргументе указывается номер записи. Возвращается имя БД или FALSE — при ошибке.
Число записей можно определить функцией msql_numrows().
msql_create_db
Создание БД mSQL
int msql_create_db (string database name [, int link_identifier])
Создает БД dbname, используя подключение link_identifier.
Функция имеет синоним msql_createdb().
См. также msql_drop_db().
msql_drop_db
Удаление БД mSQL
int msql_drop_db (string database_name, int link identifier)
Возвращает TRUE, если БД databasejiame успешно удалена, или FALSE при ошибке.
Функция имеет синоним msql_dropdb().
См. также msql_create_db().
msql_list_tables
Получение списка таблиц в БД
int msql_list_tables (string database)
Возвращает набор записей, содержащий список БД на сервере. Для извлечения отдельных записей используется функция msql_tablename().
msql_tablename
Получение имени таблицы
string msql_tablename (int query_identifier, int i)
Функция используется для получения имени таблицы (с номером ) из набора записей query_identifier, возвращенного функцией mysql_ Hst_tables().
<?php
msql_connect ("localhost")
$result = msql_list_tables ("myDB"):
$1 = 0.
while ($1 < msqljiumrovvs
($result)) {
$tb_names[$i] =
msql_tablename (Sresult. $i):
echo $tb_names[$i] .
"<BR>":1T++; } ?>
msql_select_db
Выбор БД mSQL
int msql_selectjjb (string database_name, int linkjdentifier) Возвращает TRUE или FALSE - при ошибке.
Делает БД с именем databasejiame активной для текущего подключения или указанного в linkjdentifier. Если подключений не имеется, то косвенно вызывается функция mysql_connect() с параметрами по умолчанию.
Последующие запросы, выполняемые функцией, будут адресованы данной БД.
Функция имеет синоним msql_selectdb().
См. также: msql_connect(), msql_pconnect() и msql_query().
msql_regcase
Создание регулярного выражения для поиска, нечувствительного к регистру
См. также: sql_regcase().
msql_query
Выполнение запроса к БД
int rasql_query (string query, [int linkjdentifier]).
Посылает запрос текущей БД, активной для текущего подключения или указанного в linkjdentifier. Если подключений не имеется, то косвенно вызывается функция msql_connect() с параметрами по умолчанию.
Если выражение содержит ошибки или при его выполнении возникают ошибки (например, если текущие привилегии не позволяют выполнить запрос), то функция возвращает FALSE. Если запрос успешно выполнился, то возвращается набор записей (не забывайте, Он также может содержать 0 записей), который может быть обработан функциями:

  • msql_result() — получить элемент набора записей:
  • msqljretch_array() - занести запись в массив;
  • msql _fetdn_ra* () - занести запись в нумерованный массив;
  • msql_fetch_object() - занести запись в объект.

Чтобы выяснить, сколько записей было возвращено командой SELECT,
используйте функцию msql_num_rows(); а чтобы выяснить, сколько описей было изменено в результате выполнения запросов DELETE, PLACE или UPDATE, используйте функцию msql_affected_rows().
После обработки результатов запроса он может быть удален функцией mysql_free_result().
См. также: rasq(), msql_select_db() и msql_connect().
msql
Выполнение запроса к указанной БД
int msql (string database, string query, int link_identifier)
Функция подобна msql_query() с тем отличием, что БД database, которой посылается запрос, здесь указывается явно.
msql_num_rows
Получение числа возвращенных записей
int msql_num_rows (int queryjidentifier)
Функция возвращает число записей, возвращенных запросом.
См. также: msql(), msql_query() и msql_fetch_row().
msql_affected_rows
Получение числа измененных записей в БД
int msql_affected_rows (int query_identifier)
Функция возвращает число записей, которых «коснулся» запрос (при выборке, удалении, обновлении).
См. также msql query().
msql_result
Получение элемента набора записей
int msql_result (int query_identifier, int row, mixed field)
Возвращает содержимое ячейки из набора записей query_identifier. В аргументе row указывается номер записи (нумерация начинается с 0), в аргументе field можно указать индекс поля (число), имя поля, полное имя поля (вида: «имя_таблицы.имя_поля») или псевдоним поля.
При работе с большими наборами записей быстрее выполняются функции типа _fetch_ (см. ниже). Также заметьте, что численные индексы обрабатываются быстрее строковых.
Не следует вызывать функцию msql_result() в сочетании с другими функциями обработки набора записей.
Рекомендуется использовать альтернативные функции: msql_fetch_ row(), msql_fetch_array() и msql_fetch_object().
msql_data_seek
Перемещение курсора набора записей
int msql_data_seek (int query_identifier. int rowjnumber)
При каждом вызове функции msql_fetch_row() (или подобной ей) внутренний курсор записи смещается на следующую запись. Данная функция позволяет свободно переметать курсор в наборе записей query_identifier так, чтобы он указывал на запись с номером row_ number (нумерация начинается с 0).
Функция возвращает TRUE пли FALSE — при ошибке.
См. также msql_fetch_row().
msql_fetch_array
Занесение записи в массив
int msql_fetch_array (int query_identifier [, int result_type])
Возвращает соответствующий текущей записи массив из набора записей query_identifier, возвращенных запросом, или FALSE, если записей более не имеется.
Данная функция является расширением функции msql_fetch_row(); она может возвращать нумерованный или ассоциативный массив (или объединенный). Вид возвращаемого массива может указываться в аргументе resultjtype одной из констант: MYSQL_NUM, MYSQL_ASSOC, MYSQL_BOTH (по умолчанию).
В ассоциативных массивах индексами служат имена нолей. Если имеются одноименные поля, используется последнее. Для доступа к одноименным полям также можно использовать числовые индек-т сы (поля нумеруются в той последовательности, в которой указаны в запросе или в таблице) или псевдонимы.
Заметьте, что функция работает лишь немного медленнее, чем mysql_ fetch_row(), но предоставляет дополнительную функциональность.
Будьте внимательны с обработкой записей, которые содержат единственное поле, имеющее значение 0 (или пустую строку, или NULL).
См. также msql_fetch_row().
msql_fetch_row
Занесение записи в нумерованный массив
array msql_fetch_row (int query_identifier)
Возвращает соответствующий текущей записи массив из набора записей query_identifier, возвращенных запросом (последующий вызов функции возвращает следующую запись), или FALSE, если записей более не имеется.
Каждое поле записи сохраняется в нумерованном элементе массива (нумерация начинается с 0).
См. также: msql_fetch_array(), msq()_fetch_object(), msql_data_seek() и msql_result().
msql_fetch_object
Получение записи в свойствах объекта
int msql_fetch_object (int query_identifier [, int resul t_type])
Возвращает объект, в свойствах которого находятся поля текущей записи, или FALSE, если записей более не имеется.
По скорости выполнения функция идентична mysql_fetch_array() и почти идентична mysql_fetch_row().
См. также: msql_fetch_array() и msq"l_fetch_row().
msql_fetch_field
Получение информации о поле записи в свойствах объекта
object msql_fetch_field (int query_identifier, Int field_offset)
Если номер поля fi el d_offset не указан, при каждом вызове функции возвращаются свойства следующего поля из набора записей query_ identifier.
Возвращаемый объект имеет следующие свойства (и содержит информацию):

  • name — имя поля;
  • table — имя таблицы, которой принадлежит поле;
  • notjiull — 1, если полю разрешено пустое значение;
  • primary_key — 1, если поле является ключевым;
  • unique_key -- 1, если в поле допускаются только уникальные значения;
  • type — тип поля.

См. также msql_field_seek().
msql_field_seek
Перемещение к указанному полю
int msql_field_seek (int query_identifier, int field_offset)
Последующий вызов msql_fetch_field() (если в нем не указан номер поля) будет возвращать информацию о поле с указанным номером field_offset.
См. также msql_fetch_field().
msql_fieldname
Получение имени поля в наборе записей
string msql_fieldname (int query_identifier, int field)
Функция возвращает имя ноля с индексом field в наборе записей query_identifier.
msql_fieldtable
Получение имени таблицы, которой принадлежит поле из набора записей
int msql_fieldtable (int query_identifier, int field)
msql_fieldtype
Получение типа поля набора записей
string rasql_fieldtype (int query_identifier, int i)
Возвращаемая строка содержит название тина поля: «int», «real», «string», «blob» или другого, описанного в документации.
msql_fieldflags
Получение флага поля записи
string msql_fieldflags (int query_identifier, int i)
Поля записей в mSQL Moiyr иметь два флага: «notjiull», «primary_key».
Функция возвращает перечисление через пробел флагов, имеющихся у поля с индексом i (нумерация начинается с 0) в наборе записей query_identifier (разделить полученную строку на составляющие можj но функцией explode()).
Если поле флагов не имеет, возвращается пустая строка.
msql_fieldlen
Получение размера поля набора записей
int msql_fieldlen (int query_identifier, int i)
msql_free_result
Уничтожение набора записей
int msql_free_result (int query_identifier)
Функция освобождает память, занимаемую набором записей query_ identifier, возвращенным запросом.
msql_fist fields
Получение перечисления полей в результате запроса
int msql_list_fields (string database, string tablename)
Функция возвращает пустой набор записей таблицы tablename из БД database, который можно использовать для получения информации о всех полях, имеющихся в таблице, с помощью функций: msql_ fetch_field(), msql_field_flags(), mysql_field_len(), mysql_field_name() и mysql_field_type().
Заметьте: при ошибке возвращается -1, а в переменной Sphperrmsg сохраняется сообщение об ошибке и (если функция не была вызвана с оператором «@») распечатывается сообщение об ошибке.
См. также msql_error().
msql_num_fields
Получение числа полей в наборе записей
int msql_num_fields (int queryjidentifier)
См. также: msq(), msqljjuery(), msql_fetch_field() и msql_num_rows().
Ранее функция называлась msqljiumfields().
msql_error
Получение сообщения об ошибке последней функции msql
string_msql_error ()
Возвращает сообщение об ошибке, произошедшей в ходе выполнения последней функции mSQL, или пустую строку, если ошибки не произошло. Раисе ошибки, происходящие при операциях с MySQL, выдавались в виде предупреждений, но сейчас возникновение ошибок нужно выявлять самостоятельно.
PostgreSQL
Postgres, изначально разработанная в UC Berkeley Computer Science Department, явилась одной из первых БД, использующих объектно-реляционные принципы, доступные теперь в некоторых коммерческих БД. Она поддерживает язык SQL92/SQL3, транзакции и расширение типов. PostgreSQL распространяется бесплатно и с открытым кодом. См.: http://www.postgresql.org/.
Начиная с версии 6.3 (03/02/1998). PostgreSQL использует соксты unix-доменов (адрес сокета записывается в файл /tmp/.s.PGSQL5432). Чтобы к серверу можно было подключиться через TCP/IP, postmaster необходимо запускать с ключом -i (дословно означающим: "listen on TCP/IP sockets as well as Unix domain sockets").
Ранее в функции подключения параметры указывались в отдельных аргументах, но сейчас они заключаются в одну строку:
Scorn = pg_Connect
("host=myHost port=myPort tty=my
TTY opfons--myOptions user-myUser
password=myPassword dbname=myDB");
Для использования функций интерфейса больших объектов их необходимо помещать внутрь блоков транзакций. Блок транзакции начинается с команды begin и завершается командами commit или end. Отмена транзакций выполняется командами rollback или abort.
<?php
$database = pg_Connect
("dbname=jacarta");
pg_exec (Sdatabase, "begin"):
$oid = pgjocreate (Sdatabase):
echo ("$oid\n");
$handle = pg_loopen ($database, $01d. "w"):
echo ("$handle\n"): pgjownte (Shandle. "gaga"):
pg_loclose ($handle): pg_exec
($database. "commit"): ?>
pg_connect
Подключение к серверу PostgreSQL
int pg_connect (string conn_string)
Возвращает дескриптор подключения к БД (используемый последующими функциями) пли FALSE — при ошибке. В аргументе указываются параметры подключения: host, port, tty, options, user, password, dbname.
<?php
Sdbconn = pg_Connect
("dbname=mary");
Sdbconn2 = pg_Connect
("host=localhost port=5432 dbnamemary"):
$dbconn3 = pg_Connect
("user=mb password=baaaa dbname=mary "):
?>
Устаревший синтаксис:
Sconn = pg_connect
("host", "port", "options", "tty". "dbname").
См. также pg_pconnect().
pg_close
Закрытие подключения
bool pg_close (int connection)
Закрывает указанное подключение и возвращает TRUE (или FALSE при ошибке).
Фактически использование данной функции не является обязательным, так как РНР автоматически закрывает все незакрытые неустойчивые подключения при завершении сценария.
Заметьте, что устойчивые подключения, созданные функцией рд_ pconnect(), не закрываются.
pg_pconnect
Создание устойчивого подключения к серверу PostgreSQL
int pg_pconnect (string conn_string)
Возвращает дескриптор устойчивого подключения к БД (используемый последующими функциями) или FALSE — при ошибке. В аргументе указываются параметры подключения: host, port, tty, options, user, password, dbname.
Заметьте: устойчивые подключения не закрываются при завершении сценария и остаются действительными, пока РНР остается в памяти (так, что при повторной попытке создать идентичное устойчивое подключение используется уже имеющееся).
Устаревший синтаксис:
Sconn = pg_pconnect
("host", "port", "options", "tty". "dbname")
См. также pg_connect().
pg_host
Получение имени сервера, к которому осуществлено подключение
String pg_host (int connection_id)
Возвращает значение параметра host, указанного при подключении.
pg_port
Получение номера порта, используемого подключением int pg_port (int connectionjid)
Возвращает значение параметра port, указанного при подключении (или «5432»).
pg_tty
Получение имени терминала TTY, назначенного подключению string pgjtty (int connection_id)
Возвращает имя потока вывода, в который сервер записывает отладочную информацию для указанного подключения.
pg_options
Получение параметра подключения
string pg_options (int connection_id)
pg_dbname
Получение имени используемой БД
string pg_dbname (int connection) При ошибке возвращает FALSE.
pg_set_client_encoding
Установка кодировки, используемой клиентом
int pg_set_client_encoding ([int connection, string encoding])
Возвращает 0 или -1 — при ошибке, encoding может принимать значения: SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, MULE_INTERNAL, LATINX (X=l.. .9), KOI8, WIN, ALT, SJIS, BIGS, WIN1250.
Функция требует PostgreSQL 7.0 или старше.
Ранее функция называлась pg_setclientencoding().
См. также pg_client_encoding().
pg_client_encoding
Получение кодировки, используемой клиентом
string pg_client_encoding ([int connection])
Возвращается одно из значений: SQL_ASCII, EUC_JP, EUC_CN, EUC_KR, EUC_TW, UNICODE, MULEJNTERNAL, LATINX (X=l.. .9), KOI8, WIN, ALT, SJIS, 6165, WIN1250.
Функция требует PostgreSQL 7.0 или старше.
Ранее функция называлась pg_clientencoding().
См. также pg_set_client_encoding().
pg_trace
Разрешение трассировки подключения
bool pgjtrace (string filename [, string mode [, int connection]])
Функция разрешает автоматическую запись обмена сообщениями между сервером PostgreSQL и его клиентской частью в файл отладки filename. Чтобы использовать эту возможность, необходимо понимать внутренний протокол коммуникации PostgreSQL. В простейшем случае причины ошибок, записанные в этом файле, могут быть найдены с помощью команды: backend trace.log.
Аргументы filename и mode те же, что и в функции fopen() (mode no умолчанию: «w»), connection указывает, какое подключение следует трассировать (если не указано, то используется последнее открытое).
Возвращает TRUE, если filename успешно открыт, или FALSE — при ошибке.
См. также: fopen() и pg_untrace().
pg_untrace

Запрет трассировки подключения
bool pg_untrace ([int connection])
Останавливает отладку, начатую функцией pg_trace(). Аргумент connection указывает, какое подключение следует трассировать (если не указано, то используется последнее открытое). Всегда возвращает TRUE.
См. также pgjtrace().
pg_exec
Выполнение запроса
int pg_exec (int connection, string query)
Посылает запрос query для подключения connection.
Если при выполнении запроса возникают ошибки, то функция возвращает FALSE. Получить комментарий ошибки можно функцией рд_ errormessage().
Если запрос успешно выполнился, то возвращается набор записей, который может быть обработан функциями:

  • pg_result() — получить элемент набора записей;
  • pg_fetch_array() — занести запись в массив;
  • pg_fetch_row() — занести запись в нумерованный массив;
  • pg_fetch_object() — занести запись в объект.

Чтобы выяснить, сколько записей было возвращено командой SELECT, используйте функцию pg_num_rows(); а чтобы выяснить, сколько записей было изменено в результате выполнения запросов DELETE, INSERT, REPLACE или UPDATE, используйте функцию pg_cmdtuples().
После обработки результатов запроса он может быть удален функцией pg_free_result(). Хотя в этом нет необходимости, так как ресурсы автоматически освобождаются при завершении сценария.
pg_put_line
Пересылка серверу строки
boo! pg_put_line ([resource connection_id. string data])
Для ускорения процедуры занесения информации в БД PostgreSQL позволяет метод непосредственной пересылки строк через поток ввода-вывода. Возвращает TRUE или FALSE — при ошибке.
Конец строки (записи БД) маркируется символом «\n», а поля разделяются знаком табуляции «\t». Приложение должно явно послать пару символов «\.» для указания, что клиент закончил отсылать данные.
<?php // скоростное добавление
строк в таблицу $conn = pg_pconnect
("dbname=foo");
pg_exec($conn. "create table tbl
(a int4. b char(16). d floats)"):
pg_exec($conn. "copy tbl from stdin"):
// начать запись pg_put_line
($conn. "3\thello world\t4.5\n").
pg_put_line
($conn. "4\tgoodbye world\t/.ll\n")
, pg_put_line($copn. "\\.\n"):
pg_end_copy($conn), ?>
См. также pg_end_copy().
pg_end_copy
Синхронизация операции вставки
boo! pg_end_copy ([resource connection])
Функцию следует вызывать после того, как функцией pg_put_line() завершена передача данных серверу PostgreSQJL (для того, чтобы зафиксировать полученные данные). Возвращает TRUE или FALSE — при ошибке.
См. также pg_put_line().
pg_numrows
Получение числа возвращенных записей
int pg_numrows (int result_id)
Возвращает число записей, возвращенных запросами SELECT. Дескриптор набора возвращенных записей (аргумент result_id) должен быть у получен от функции рд_ехес().
pg_numfields
Получение числа полей в наборе записей
int pgjiumfields (int result_id)
Возвращает число полей (столбцов) в наборе записей, возвращенном функцией рд_ехес(), или -1 — при ошибке.
pg_cmdtuples
Получение числа измененных записей в БД
int pg_cmdtuples (int result_id)
Возвращается число записей (сущностей), измененных в результате выполнения запросов DELETE, INSERT, REPLACE или UPDATE. Если изменений произведено не было, возвращает 0.
<?php
Sresult = pg_exec ($conn.
"INSERT INTO publisher VALUES
('Author')"): $rows_affected =
pg_ondtuples ($result):
echo "Число выполненных изменений:
". $rows_affected: ?>
pg_freeresult
Уничтожение набора записей
Int pg_freeresult (int result_id)
Функция освобождает память, занимаемую набором записей resultjid, возвращенным запросом. Ее следует использовать только в случае, если требуется экономить память, так как память автоматически освобождается при завершении сценария.
pg_result
Получение определенного элемента набора записей
mixed pg_result (int result_id. int rowjiumber, mixed fieldname)
Функция возвращает значение из набора записей, возвращенного функцией рд_Ехес(). Аргументы row_number и fieldname указывают соответственно номер строки (записи) и ноле (столбец). Нумерация начинается от 0. Поле можно указывать его именем или номером.
PostgreSQL имеет много встроенных типов данных, и РНР поддерживаются только основные. Тины integer, boolean и old возвращаются как целочисленные значения. Все формы float и real типов возвращаются как дробные значения. Все остальные типы (включая массивы) возвращаются в виде строк в том же формате, что и в программе psql.
pg_fetch_array
Занесение записи в массив
array pg_fetch_array (int result, int row [.int result_type])
Возвращает массив, соответствующий записи с номером row, из набора записей result, возвращенных запросом, или FALSE, если такой записи не имеется (также выдается предупреждение).
Данная функция является расширением функции pg_fetch_row(), она может возвращать нумерованный или ассоциативный массив (а также объединенный). Вид возвращаемого массива может указываться в аргументе resu1t_type одной из констант: PGSQL_NUM, PGSQL_ASSOC, PGSQL_BOTH (по умолчанию).
В ассоциативных массивах индексами служат имена полей (они всегда в нижнем регистре).
Заметьте, что функция выполняется лишь немного медленнее, чем pg_fetch_row(), но предоставляет дополнительную функциональность.
<?php
Jconn = pg_pconnect
("dbname=publisher");
if CSconn) {
echo "An error occured.\n"; exit; }
Sresult -= pgjxec
(Sconn. "SELECT * FROM Authors");
if (!$result) {
echo "An error occured.\n";
exit: }
$arr = pg_fetch_array
(Sresult. 0); echo $arr[0] .
" или ". $arr["author"] :
// можно и так
for($i=0; $row = @pg_fetch_array
(Sresult.Si); $i++)
{ echo $row["author"]; } ?>
См. также pg_fetch_row().
pg_fetch_row
Занесение записи в нумерованный массив
array pg_fetch_row (int result, int row)
Возвращает массив, соответствующий записи с номером row, из набора записей result, возвращенных запросом, или FALSE, если такой записи не имеется.
<?php
if (!($conn = pg_pconnect
("dbname=publisher"))) {
echo "An error occured.\n";
exit. }
if (! (Sresult = pgjxec
($conn. "SELECT * FROM authors")))
{
echo "An error occured.\n";
exit: } $num = pg_numrows
(Sresult);
for ($i=0: Si<$num: Si++)
{ $r = pg_fetch_row(Sresult. Si).
for ($j=0: $j<count($r): Sj++) {
echo "SrLSj]&nbsp,"; }
echo
"<BR>"; } ?>
См. также: pg_fetch_array(), pg_fetch_object(), pg_result().
pg_fetch_object
Получение записи в свойствах объекта
object pg_fetch_object (int result, int row [, int resultjtype])
Возвращает объект, в свойствах которого находятся поля текущей записи, или FALSE, если записей более не имеется.
По скорости выполнения функция идентична pg_fetch_array() и почти идентична pg_fetch_row().
<?php Sdatabase = "verlag".
$db_conn = pg_connect
("host-localhost port=5432
dbnameSdatabase");
if (!$db_conn):
?><Hl>Failed connecting to
postgres database
<?php echo $database ?>
</Hl> <?php
exit: endlf:
$qu = pg_exec
($db_conn, "SELECT *
FROM verlag ORDER BY autor");
for ($row = 0: Sdata =
@pg_fetch_object ($qu. $row).
$row++){ echo $data->autor."
("; \ echo Sdata->jahr ."):
": echo $data->titel."<BR>": } ?>
<PRE><?php
$fields[] = Array
("autor". "Author"), SfieldsL]
= Array ("jahr". " Year"),
Sfieldst] = Array ("titel". " Title");
for ($row = 0: Sdata =
@pg_fetch_object (Jqu. $row);
$row++) : reset (Sfields);
while (list (,$item) = each (Sfields)):
echo $item[l].": ".$data->$item[0].
"\n", endwhile: endfor;
echo "</PRE>";
pg_freeResult ($qu);
pg_close ($db_conn): ?>
См. также: pg_fetch_array() и pg_fetch_row().
pg-fieldname
Определение имени поля
string pg_fieldname (int resulted, int field_number)
Возвращает имя поля по его номеру в наборе записей. Нумерация начинается с 0.
pg_fieldnum
Определение номера поля
int pg_fieldnum (int result_id, string fieldjiame)
Возвращает номер поля в наборе записей по его имени или -1 — при ошибке.
pg_fieldtype
Определение типа поля
string pg_fieldtype (int resu1t_id, ijit field_number)
pg_fieldprtlen
Определение длины значения в поле
int pg_fie!dprtlen (int result_id, int row_number, string field_name)
Возвращает фактическую длину содержащегося в поле значения в байтах (число символов). Возвращает -1 при ошибке.
pg_fieldsize
Определение внутреннего размера поля
int pg_fieldsize (int result_id, int field_number)
Возвращает размер в байтах или значение -1 для полей переменной длины. При ошибке возвращается FALSE.
pg_fieldisnull
Определение равенства значения поля NULL
int pg_fieldisnull (int resultjid, int row, mixed field)
Возвращает О, если поле field в записи row не содержит значение NULL, или 1 в противном случае. Поле может быть указано именем или номером.
pg_getlastoid
Получение идентификатора последнего объекта
int pg_getlastoid (int result_id)
Используется для получения идентификатора (oid) назначенному объекту, вставленному последней SQL-командой INSERT в функции рд_ехес(). Возвращает положительное значение oid или -1, если последней командой в рд_ехес() не была INSERT.
pg_locreate
Создание большого объекта
int pgjocreate (int conn)
Создает «Inversion Large Object» и возвращает его oid. conn содержит дескриптор подключения. Режимы доступа PostgreSQL INV_READ, INV_WRITE и INV_ARCHIVE не поддерживаются, объект всегда создается с доступом для чтения и записи. INV_ARCHIVE был удален из самого PostgrcSQL (для версий 6.3 и старше).
pg_loopen
Открытие большого объекта
int pgjoopen (int conn, int objoid, string mode)
Открывает большой объект БД «Inversion Large Object» и возвращает его файловый дескриптор. Аргумент objoid указывает действительный oid (идентификатор объекта), a mode — режим доступа, который может принимать значения «г», «w» или «rw».
Не закрывайте подключения, не закрыв предварительно большой объект.
pg_loclose ,
Закрытие большого объекта
void pgjoclose (int fd)'
В аргументе fd указывается дескриптор объекта, полученный от рд_ loopen().
pg_loimport
Импорт большого объекта из файла
int pgjoimport (int file [, int connection_id])
Имя импортируемого файла (путь) указывается в аргументе filename. Возвращает идентификатор созданного объекта (oid) или FALSE -при ошибке. Не забывайте, что работа с большими объектами должна проходить внутри транзакции.
pg_loexport
Экспорт большого объекта в файл
boo! pgjoexport (int oid, int file [, int connectionjd])
Имя файла (путь) указывается в аргументе filename, а идентификатор объекта — в oid. Возвращает TRUE или FALSE — при ошибке. Не забывайте, что работа с большими объектами должна проходить внутри транзакции.
pg_loread
Чтение большого объекта
string pgjoread (int fd, int Ten)
Возвращает прочитанную из объекта строку, указанную его дескриптором fd. В аргументе 1еп указывается максимальная длина возвращаемой строки.
pg_loreadall
Создание большого объекта и отсылка его содержимого непосредственно в поток вывода (браузеру)
void pgjoreadall (int fd)
Используется в основном для вывода двоичных данных (графики и звука).
pg_lowrite
Запись большого объекта
int pgjowrite (int fd, string buf)
Записывает данные из буфера buf в объект, указанный дескриптором fd; возвращает число фактически записанных байтов или FALSE — при ошибке.
pg_lounlink
Удаление большого объекта void pgjounlink (int conn, int lobjid)
pg_errormessage
Получение последнего сообщения об ошибке
string pg_errormessage (int connection)

 

 
На главную | Содержание | < Назад....Вперёд >
С вопросами и предложениями можно обращаться по nicivas@bk.ru. 2013 г. Яндекс.Метрика