mysql_affected_rows -- возвращает количество столбцов, использованных предыдущими MySQL операциями
Описание
int mysql_affected_rows(int [link_identifier]
);
mysql_affected_rows() возвращает количество столбцов, использованных запросами INSERT, UPDATE или DELETE на сервере, связываемом с определенным идентификатором связи(link_identifier). Если идентификатор связи не определен, используется последняя открытая связь.
Если последний запрос был запрос DELETE без условия WHERE, ВСЕ записи будут удалены из таблицы, но эта функция возвратит нуль.
Эта команда не действует при запросе SELECT, она действует только при запросах, изменяющих записи. Чтобы получить количество колонок возвращенных на запрос SELECT, используйте mysql_num_rows() .
mysql_close
mysql_close -- закрывает MySQL соединение
Описание
int mysql_close(int [link_identifier]
);
Возвращает: true при успешном завершении, false при ошибке
mysql_close() закрывает связь с базой данных MySQL, ассоциированной с определенным идентификатором связи(link identifier.
Если идентификатор связи не определен, используется последняя открытая связь.
Имейте в виду, что это не всегда необходимо, так как непостоянные открытые связи автоматически закрываются в конце выполнения сценария.
mysql_close() не закроет устойчивые связи сгенерированные функцией mysql_pconnect().
Возвращает: Правильный идентификатор связи MySQL при успешном выполнении, или false при ошибке.
mysql_connect() устанавливает соединение с MySQL сервером. Все аргументы дополнительны(опциональны), и если они пропущены, то устанавливаются по умолчанию -('localhost', имя пользователя, который владеет процессом, пустой пароль). Строка "имя сервера"("hostname") также может содержать номер порта( подобно "hostname:port").
В случае, если будет сделан второй вызов mysql_connect() с теми же аргументами, никакая новая связь не установится - вместо этого, будет возвращен идентификатор связи уже открытой связи.
Как только выполнение сценария закончится, связь с сервером закроется, если оно не было явно закрыто более ранний вызовом
mysql_close() .
int mysql_data_seek(int result_identifier, int row_number);
Возвращает: true при успешном выполнении , false при ошибке.
mysql_data_seek() перемещает внутренний указатель столбца в MySQL запросе связанного с определенным идентификатором результата чтобы указать на определенный номер столбца. Последующий вызов mysql_fetch_row() должно возвратить этот столбец.
mysql_db_query
mysql_db_query -- Посылает MySQL запрос
Описание
int mysql_db_query(string database, string query, int [link_identifier]
);
Возвращает: Правильный идентификатор результата MySQL в результате запроса,
или false при ошибке .
mysql_db_query() выбирает базу данных и выполняет запрос на нее. Если дополнительный идентификатор связи не определен, функция попытается найти открытую связь с MySQL сервером и если такая связь не обнаружена, то она попытается создать ее, как если бы функция mysql_connect() была вызвана без аргументов.
См. также mysql_connect() . Для обратной совместимости может быть также использована функция mysql().
mysql_drop_db
mysql_drop_db -- удаляет базу данных MySQL
Описание
int mysql_drop_db(string database_name, int [link_identifier]
);
Возвращает: true при успешном выполнении , false при неудачном завершении.
mysql_drop_db() пытается удалить целую базу данных с сервера, связанного с определенным идентификатором связи.
См. также: mysql_create_db() . Для обратной совместимости может быть также использована функция mysql_dropdb().
mysql_errno
mysql_errno -- Возвращает номер сообщения об ошибке предыдущей операции MySQL
Описание
int mysql_errno(int [link_identifier]
);
Ошибки возвращающиеся с выходного буфера базы данных mySQL больше не делают предупреждение. Взамен, используйте эту функцию, чтобы получить номер ошибки.
mysql_error -- Возвращает текст сообщения об ошибке предыдущей операции MySQL
Описание
string mysql_error(int [link_identifier]
);
Ошибки возвращающиеся с выходного буфера базы данных mySQL больше не делают предупреждение. Взамен, используйте эту функцию, чтобы получить строку описания ошибки.
mysql_fetch_array -- Выбрать результат как ассоциативный массив
Описание
array mysql_fetch_array(int result);
Возвращает результат строки запроса как массив, или false при отсутствии результата.
mysql_fetch_array() является расширенной версией функции
mysql_fetch_row() . Кроме того, что она сохраняет данные в пронумерованных элементах, результатного массива, она также сохраняет ассоциативную связь, используя имена полей как ключи.
Если два или более столбцов имеют одинаковые имена, то связку ключ/значение получает последний из них. Чтобы получить доступ к другому столбцу(-цам) с таким же именем, вы должны использовать индексы или задать псевдонимы(alias) для этих столбцов.
select t1.f1 as foo t2.f1 as bar from t1, t2
Важно заметить, что использование mysql_fetch_array() НЕСУЩЕСТВЕННО медленнее, чем использование mysql_fetch_row() , пока это обеспечивает необходимую задачу.
mysql_fetch_field -- Получает информацию о столбце из результата и возвращает ее как объект.
Описание
object mysql_fetch_field(int result, int [field_offset]
);
Возвращает объект, содержащий информацию о поле.
mysql_fetch_field() Может быть использована для получения информации о поле в определенном результате запроса. Если параметры поля не указаны, то будет запрошено поле, которое еще не было запрошено функцией mysql_fetch_field().
Свойствами объекта являются:
name - имя столбца
table - имя таблицы, содержащей столбец
max_length - максимальная длинна столбца
not_null - 1, если столбец не может принимать нулевые значения
primary_key - 1, если столбец является первичным ключом.
unique_key - 1 если столбец является уникальным ключом
multiple_key - 1 если столбец является не-уникальным ключом
mysql_fetch_lengths -- Получает максимальный размер данных для каждого выходного значения
Описание
array mysql_fetch_lengths(int result);
Возвращает: Массив, который соответствует длинам каждого поля в последней строке, выбранной
mysql_fetch_row() ,
или false при ошибке .
mysql_fetch_lengths() хранит длины каждого столбца в последней колонке результата возвращенного функцией mysql_fetch_row() в массиве, нумеруемом с нуля.
mysql_fetch_object -- Получает строку результата как объект.
Описание
object mysql_fetch_object(int result);
Возвращает объект с свойствами, который соответствует полученной строке, или false если нет результата.
mysql_fetch_object() подобна
mysql_fetch_array() , с одним различием - вместо массива возвращается объект.
Это означает, что Вы можете иметь доступ к данным только по именам полей, а не по их параметрам (индексные числа в данном случае являются неверным обращением).
mysql_fetch_row -- Получите строку результата как пронумерованный массив
Описание
array mysql_fetch_row(int result);
Возвращает: Массив, который соответствует выбранным колонкам, или false
если нет результата.
mysql_fetch_row() выбирает столбец данных из результата, и связывает его с определенным идентификатором результата(индексом элемента массива). Запрос возвращается как массив. Каждый столбец результата хранится в элементах массива, пронумерованного с нуля.
Последующий вызов функции mysql_fetch_row() должен возвратить следующую строку, или false если нет больше колонок.
mysql_field_name -- Получает имя определенного поля в результате
Описание
string mysql_field_name(int result, int field_index);
mysql_field_name() возвращает имя указанного поля. Аргументами функции являются идентификатор результата и индекс поля, т.е.
mysql_field_name($result,2);
Возвратит имя второй области в результат, связанный с идентификатором результата($result).
Для обратной совместимости также может быть использована функция mysql_fieldname().
mysql_field_seek
mysql_field_seek -- Устанавливает указатель запроса в определенное поле.
Описание
int mysql_field_seek(int result, int field_offset);
Поиск в определенном поле. Если следующий вызов mysql_fetch_field() не содержит указания поля, то должно быть возвращено именно это поле.
mysql_field_table -- Получает имя таблицы, в которой находится указанное поле.
Описание
string mysql_field_table(int result, int field_offset);
Получает имя таблицы поля. Для обратной совместимости также может быть использована mysql_fieldtable() .
mysql_field_type
mysql_field_type -- Получает тип указанного поля в результате
Описание
string mysql_field_type(int result, int field_offset);
mysql_field_type() подобна функции mysql_field_name() . Аргументы идентичны, но возвращается тип поля. Это будет что-то из "int", "real", "string", "blob", или другие типы, которые подробно описываются в документации MySQL.
Пример 1. mysql field types
<?php
mysql_connect("localhost:3306");
mysql_select_db("wisconsin");
$result = mysql_query("SELECT * FROM onek");
$fields = mysql_num_fields($result);
$rows = mysql_num_rows($result);
$i = 0;
$table = mysql_field_table($result, $i);
echo "Your '".$table."' table has ".$fields." fields and ".$rows." records <BR>";
echo "The table has the following fields <BR>";
while ($i < $fields) {
$type = mysql_field_type ($result, $i);
$name = mysql_field_name ($result, $i);
$len = mysql_field_len ($result, $i);
$flags = mysql_field_flags ($result, $i);
echo $type." ".$name." ".$len." ".$flags."<BR>";
$i++;
}
mysql_close();
?>
Для обратной совместимости mysql_fieldtype()
также может быть использована.
mysql_field_flags
mysql_field_flags -- Получает флаги, связанные с указанным полем в результате
Описание
string mysql_field_flags(int result, int field_offset);
mysql_field_flags() возвращает флаги указанного поля. Флаги передаются как одно слово на флаг, разделенные одним пробелом, так, что Вы можете разделить возвращенную величину используя explode() .
Если ваша текущая версия MySQL их поддерживает, могут быть получены следующие флаги :
: "not_null", "primary_key",
"unique_key", "multiple_key", "blob", "unsigned", "zerofill",
"binary", "enum", "auto_increment", "timestamp".
Для обратной совместимости mysql_fieldflags() также может быть использована.
mysql_field_len
mysql_field_len -- Возвращает длину указанного поля
Описание
int mysql_field_len(int result, int field_offset);
mysql_field_len() возвращает длину указанного поля. Для обратной совместимости mysql_fieldlen() также может быть использована.
mysql_free_result
mysql_free_result -- Освобождает память результата
Описание
int mysql_free_result(int result);
mysql_free_result() должна быть использована только если Вы беспокоитесь об использовании слишком большого объема памяти, во время работы вашего скрипта. Вся используемая результатом память для определенного идентификатора результата автоматически будет освобождена.
Для обратной совместимости mysql_freeresult()
также может быть использована.
mysql_insert_id
mysql_insert_id -- Получает id сгенерированный предыдущим выполнением SQL-запроса INSERT
Описание
int mysql_insert_id(int [link_identifier]
);
mysql_insert_id() возвращает ID сгенерированнуые для поля с автоинкрементом(AUTO_INCREMENTED). Эта функция не использует аргументов. Она возвратит автоматически сгенерированный номер ID возвращенный последним запросом INSERT.
mysql_list_fields
mysql_list_fields -- Показывает список полей MySQL в результате запроса
Описание
int mysql_list_fields(string database_name, string table_name, int [link_identifier]
);
mysql_list_fields() извлекает информацию о заданной tablename таблице. Аргументы - имя базы данных и имя таблицы. После выполнения возвращается указатель результата, который может использоваться функциями
mysql_field_flags() ,
mysql_field_len() ,
mysql_field_name() , и
mysql_field_type() .
Идентификатор результата является положительным целым. Функция возвращает -1 если происходит ошибка. Строка описсания ошибки будет помещена в переменную $phperrmsg, и если функция не была вызвана как @mysql() то затем также будет выведено это описание ошибки.
Для обратной совместимости mysql_listfields()
также может быть использована.
mysql_list_dbs
mysql_list_dbs -- Показывает список доступных Баз Данных на сервере
Описание
int mysql_list_dbs(int [link_identifier]
);
mysql_list_dbs() возвратит указатель результата, содержащий базы данных доступные текущему процессу mysql. Используйте функцию mysql_tablename() , чтобы просмотреть этот указатель результата.
Для обратной совместимости mysql_listdbs() также может быть использована.
mysql_list_tables
mysql_list_tables -- Показывает список таблиц в базе данных MySQL
Описание
int mysql_list_tables(string database, int [link_identifier]
);
mysql_list_tables() берет имя базы данных и указатель результата очень подобно функции mysql_db_query() . Функция mysql_tablename() должна использоваться, чтобы извлечь фактические имена таблиц с указателя результата.
Для обратной совместимости mysql_listtables()
также может быть использована.
mysql_num_fields
mysql_num_fields -- Получает количество полей в результате.
Описание
int mysql_num_fields(int result);
mysql_num_fields() получает количество полей в установленном результате.
Возвращает: Правильный MySQL идентификатор устойчивой связи при успешном выполнении ,
или false при ошибке.
mysql_pconnect() действует очень похоже на
mysql_connect() с двумя важными различиями.
Во-первых, при соединении, функция должна сначала попытаться найти (устойчивую) связь, которая уже открыта тем же хостом, именем пользователя и паролем. Если она обнаруживается, возвратится ее идентификатор, вместо открытия нового соединения.
Во-вторых, соединение с сервером SQL не закроется, когда закончится выполнение сценария. Вместо этого, связь останется открытой для последующего использования (mysql_close() не закроет связи установленные функцией mysql_pconnect()).
Потому этот тип связей назван 'устойчивый'.
mysql_query
mysql_query -- Отправляет SQL-запрос на MySQL
Описание
int mysql_query(string query, int [link_identifier]
);
mysql_query() посылает запрос в базу данных, к настоящему времени активную на сервере, который связан с определенным идентификатором связи. Если link_identifier не указан, используется последняя открытая связь. Если связь не открыта, функция пытается установить связь, как если бы была вызвана функция mysql_connect() и использует ее.
Эта функция возвращает TRUE или FALSE чтобы показать успешность выполнения запросов UPDATE, INSERT, и DELETE. При запросе SELECT она возвращает новый идентификатор результата. Ресурсы, использованные запросом затем могут быть освобождены вызовом функции mysql_free_result() .
int mysql_result(int result, int row, mixed field);
mysql_result() возвращает содержимое одной ячейки из установленного результата MySQL. Аргументом поля может быть номер или имя поля, или параметр типа имя_таблицы-точка-имя_поля(fieldname.tablename).
Если имя столбца заменено псевдонимом('select foo as bar from...'), используйте псевдоним вместо имени столбца.
Работая с больших результатами, Вы должны предусматривать использование одной из функций, которые выбирают целую строку(указано ниже)
За счет того, что эти функции возвращают содержимое большого числа ячеек за один вызов функции, они ЗНАЧИТЕЛЬНО более быстрые чем mysql_result(). Также, имейте в виду, что определение аргумента поля числовым параметром, значительно более быстрое чем определение имени поля(fieldname) или использование аргумента tablename.fieldname.
Вызов mysql_result() не должен смешиваться с вызовами других функций, которые имеют дело с установленным результатом.
int mysql_select_db(string database_name, int [link_identifier]
);
Возвращает: true при успешном выполнении , false при ошибке
mysql_select_db() устанавливает текущую активную базу данных в сервере, которая связывается с определенным идентификатором связи. Если не определен идентификатор связи, принимается последняя открытая связь.
Если связь не открыта, функция попытается установить связь, как если бы была вызвана функция mysql_connect() .
Каждый последующий вызов mysql_query() будет произведен в активной базе данных.
Для обратной совместимости mysql_selectdb()
также может быть использована.
mysql_tablename
mysql_tablename -- Получает имя таблицы, содержащей указанное поле.
Описание
string mysql_tablename(int result, int i);
mysql_tablename() берет указатель результата возвращенный функцией
mysql_list_tables() а также
целочисленный индекс и возвращает имя таблицы. Функция mysql_num_rows() может использоваться для того, чтобы определить количество таблиц на данном указателе результата.