База данных MySQL
База данных MySQL
mysql_connect
Устанавливает сетевое соединение с базой данных MySQL.
Синтаксис:
int mysql_connect([string $hostname[:port][:/path/to/socket][, [,string $username [,string $password]]])
Функция mysql_connect() устанавливает сетевое соединение с базой данных MySQL, расположенной на хосте $hostname, и возвращает идентификатор открытого соединения. Вся дальнейшая работа ведется именно с этим идентификатором. При регистрации указывается имя пользователя $username и пароль $password. Строка $hostname также может включать в себя номер порта в виде "hostname:port" или путь к сокету для локальной машины в системах Unix - ":/path/to/socket" (если сервер MySQL настроен не на стандартный, а на какой-то другой порт).
При ошибке выдается предупреждение. Выдачу сообщения об ошибке можно блокировать, указав перед именем функции оператор "@".
При следующем запуске функции с теми же самыми аргументами второе соединение не будет открыто, а функция возвратит идентификатор уже существующего.
В конце сценария обычно принято закрывать подключения функцией mysql_close(), но этого можно не делать, т.к. PHP автоматически закрывает все (неустойчивые) подключения при завершении сценария.
<?php
$conn = mysql_connect ("localhost", "username", "pass")
or die ("Соединение не установлено!");
print ("Соединение установлено!");
mysql_close($conn);
?>
mysql_pconnect
Устанавливает устойчивое сетевое соединение с базой данных MySQL.
Синтаксис:
int mysql_pconnect([string $hostname[:port][:/path/to/socket][, [,string $username [,string $password]]])
Функция mysql_pconnect() устанавливает устойчивое сетевое соединение с базой данных MySQL, расположенной на хосте $hostname, и возвращает идентификатор открытого соединения. Вся дальнейшая работа ведется именно с этим идентификатором. При регистрации указывается имя пользователя $username и пароль $password. Строка $hostname также может включать в себя номер порта в виде "hostname:port"или путь к сокету для локальной машины в системах Unix - ":/path/to/socket" (если сервер MySQL настроен не на стандартный, а на какой-то другой порт).
При ошибке выдается предупреждение. Выдачу сообщения об ошибке можно блокировать, указав перед именем функции оператор "@".
При следующем запуске функции с теми же самыми аргументами второе соединение не будет открыто, а функция возвратит идентификатор уже существующего.
mysql_pconnect() действует аналогично mysql_connect(), но с двумя отличиями:
mysql_close
Закрывает установленное ранее соединение с базой данных.
Синтаксис:
int mysql_close ([int link_identifier])
Закрывает соединение с MySQL-сервером с идентификатором link_identifier, или последнее открытое соединение, если используется без идентификатора.
Возвращает true при удачном закрытии или false при ошибке.
Использование этой функции не обязательно, т.к. PHP автоматически закрывает все неустойчивые подключения при завершении работы сценария.
Подключения, установленные функцией mysql_pconnect(), не закрываются.
<?php
$conn = mysql_connect ("localhost", "username", "pass")
or die ("Соединение не установлено!");
print ("Соединение установлено!");
mysql_close($conn);
?>
mysql_change_user
Изменяет параметры подключения.
Синтаксис:
int mysql_change_user(string user, string password [, string database [, int link_identifier]])
Если не указывается БД или подключение, то используется последняя активная БД.
Если авторизация не произошла, то параметры подключения не изменяются.
Работает с MySQL 3.23.3 и выше.
mysql_list_dbs
Возвращает список БД на сервере.
Синтаксис:
int mysql_list_dbs([int link_identifier])
Возвращает набор записей, содержащий список БД на сервере.
$bd=mysql_connect("localhost", "name", "pass");
$bd_list=mysql_list_dbs($bd);
while($row=mysql_fetch_object($bd_list)) {
echo $row->Database."n";
}
Надо отметить, что список баз данных можно получить не имея привелегий, т.е. не указывая пароль доступа.
mysql_db_name
Возвращает имя базы данных из списка.
Синтаксис:
int mysql_db_name(int result, int row [, mixed field])
Параметр result задает дескриптор набора записей, полученных при помощи функции mysql_list_dbs(). Аргумент row указывает номер записи.
В случае ошибки данная функция возвращает false.
mysql_connect("localhost", "username", "pass");
$db_list=mysql_list();
for($i=0;$i<($cnt=mysql_num_rows($db_list));$i++) {
echo mysql_db_name($db_list,$i)."n";
}
Ранее функция называлась mysql_dbname().
mysql_select_db
Выбор одной базы данных MySQL.
Синтаксис:
int mysql_select_db (string database_name [, int link_identifier])
Возвращает true при удачном закрытии или false при ошибке.
Если Вы планируете открывать только одно соединение с базой данных за все время работы сценария, то можете не сохранять возвращенное значение, а также не указывать идентификатор при вызове всех остальных функций.
До того как послать первый запрос серверу MySQL, необходимо указать, с какой базой данных мы собираемся работать. Для этого и предназначена данная функция. Она уведомляет, что в дальнейших операциях с соединением link_identifier (или с последним открытым соединением, если указанный параметр не задан) будет использоваться база данных database_name.
Если на момент вызова данной функции подключений к базе данных нет, то косвенно вызывается функция mysql_connect() с параметрами по умолчанию.
mysql_create_db
Создание базы данных MySQL.
Синтаксис:
int mysql_create_db(string dbname [, int link_identifier])
Эта функция создает новую базу данных MySQL с именем dbname, используя подключение link_identifier.
$db=mysql_connect("localhost", "name", "pass");
if(mysql_create_db("my_db_name")) {
echo "БД my_db_name создана");
} else {
echo "Ошибка создания БД: %sn".mysql_error());
}
mysql_drop_db
Удаление базы данных MySQL.
Синтаксис:
int mysql_drop_db(string database_name [, int link_identifier])
Функция mysql_drop_db() удаляет базу данных database_name, доступную в подключении link_identifier.
В случае успешного удаления возвращает true, при ошибке - false.
mysql_list_tables
Возвращает список таблиц в БД.
Синтаксис:
int mysql_list_tables(string database [,int link_identifier])
Функция возвращает идентификатор результата (одна колонка), в котором содержаться имена всех таблиц, присутствующих в базе данных. Для извлечения этих имен можно использовать функцию mysql_result() с номером колонки, равным 0, иди функцию mysql_tablename().
Следующий пример выведет все имена баз данных и таблиц, которые в них содержаться:
$db=mysql_connect("localhost", "user_name", "");
$db_list=mysql_list_dbs($db);
while($r_db=mysql_fetch_object($db_list)) {
echo $r_db->Database."n";
// распечатать список таблиц
$t_list=mysql_list_tables($r_db->Database);
for($i=0;$i<mysql_num_rows($t_list);$i++) {
echo " - ".mysql_tablename($t_list,$i)."n";
}
}
mysql_tablename
Возвращает имя таблицы в БД.
Синтаксис:
int mysql_tablename(int result, int i)
Функция возвращает имя таблицы с номером i из набора записей, полученных при помощи функции mysql_list_tables().
$db=mysql_connect("localhost", "user_name", "");
$result=mysql_list_tables("db_name");
$i=0;
while($i<mysql_num_rows($result)) {
$t_name[$i]=mysql_tablename($result, $i);
echo $t_name[$i]."<BR>";
$i++;
}
mysql_query
Посылает запрос базе данных MySQL.
Синтаксис:
int mysql_query(string query [,int link_identifier])
Эта функция посылает запрос query базе данных, связанной с идентификатором link_identifier. Если идентификатор не указан, то принимается во внимание последнее открытое соединение. Если до этого соединение небыло установлено, то выполняется операция mysql_connect() с параметрами по умолчанию.
SQL-выражение, указанное в параметре query, не должно оканчиваться ";".
Если выражение содержит ошибки, или его выполнение приводит к ошибкам, то функция mysql_query() возвращает false.
В результате успешно выполненного запроса возвращается набор записей, который можно обработать следующими функциями:
Чтобы узнать, сколько записей было найдено командой SELECT, воспользуйтесь функцией mysql_num_rows().
Для того, чтобы узнать, сколько записей было изменено в результате выполнения запросов DELETE, INSERT, REPLACE или UPDATE, воспользуйтесь функцией mysql_affected_rows().
После обработки результатов запроса он может быть удален функцией mysql_free_result(). Но в этом нет необходимости, т.к. результаты сами уничтожаются после завершения работы сценария.
mysql_db_query
Посылает запрос к указанной базе данных MySQL.
Синтаксис:
int mysql_db_query(string database, string query [,int link_identifier])
Эта функция эквивалентна следующей последовательности функций:
mysql_select_db(string database [, int link_identifier]);mysql_query(string query [, int link_identifier]);
mysql_num_rows
Возвращает количество строк в результате запроса.
Синтаксис:
int mysql_num_rows(int result)
Эта функция возвращает число записей, найденных в результате выполнения SQL-команды SELECT (поиск по базе данных).
<?php
$link = mysql_connect("localhost", "username", "password");
mysql_select_db("database", $link);
$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);
echo "Получено строк: $num_rowsn";
?>
mysql_affected_rows
Возвращает количество измененных записей в БД MySQL.
Синтаксис:
int mysql_affected_rows([int link_identifier]);
Функция mysql_affected_rows() возвращает количество записей, которые были изменены в базе данных в результате выполнения запросов DELETE, INSERT, REPLACE или UPDATE.
Если последним запросом была команда DELETE без ограничения WHERE (т.е. из таблицы были удалены все записи), то наша функция возвратит 0.
mysql_insert_id
Получает вставленный идентификатор.
Синтаксис:
int mysql_insert_id([int $link_identifier])
Функция возвращает непосредственно перед ее вызовом сгенерированный идентификатор записи для автоинкрементного поля после выполнения команды insert. Вызывать ее разумно только сразу после выполнения инструкции insert, например, в таком контексте:
mysql_query("insert into Таблица(поле 1, поле 2) values("aa","bb")");
$id=mysql_insert_id();
Теперь к только что вставленной записи можно обратиться, используя идентификатор $id:
$r=mysql_query("select * from Таблица where id=$id");
$Row=mysql_fetch_array($r);
mysql_data_seek
Устанавливает указатель текущей строки.
Синтаксис:
int mysql_data_seek(int result, int row_number)
Эта функция устанавливает указатель текущей строки в результате result в позицию row_number, так что следующий вызов mysql_fetch_row() и mysql_fetch_array() вернет значения полей именно этой строки.
Нумерация записей ведется с 0.
Возвращает false в случае ошибки или если строки кончились.
mysql_free_result
Уничтожает набор записей.
Синтаксис:
int mysql_free_result(int result)
Данная функция освобождает память, занимаемую набором записей result, возвращенным запросом.
Эта функция необходима, когда нужно экономить память, т.к. PHP автоматически освобождает память при завершении сценария.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Интегрированная база данных
Интегрированная база данных В сегодняшнем бизнесе конкуренция постоянно усиливается. Чтобы достичь успеха приходится производить больше продукции за меньшую стоимость и быстрее, чем раньше. В нашем стремительном мире остановиться — значит проиграть. Как сказал,
База данных без имени
База данных без имени Много лет назад мы решили интегрировать мощную реляционную базу данных в каждую System/38. Затем эта идея перекочевала и в AS/400. Мы считали, что способность полнофункциональной системы управления базой данных (СУБД) эффективно и надежно обрабатывать
Двуликая база данных
Двуликая база данных Говоря о базе данных, мы имеем в виду не просто некоторое место для размещения данных. Мы говорим о системе управления базой данных. СУБД — среда для хранения и выборки данных, включающая определения данных, правила обеспечения их целостности и
Как функционирует база данных
Как функционирует база данных В этом разделе мы рассмотрим различные компоненты базы данных AS/400. Я не ставил здесь перед собой задачу проинструктировать Вас, как использовать эту базу данных. Уже есть целый ряд хороших книг, посвященных внешним аспектам базы данных и
20.2.1 Логическая база данных
20.2.1 Логическая база данных В SNMP используется модель базы данных. Каждая сетевая система содержит информацию о конфигурации, текущем состоянии, ошибках и производительности. К этой информации может получить доступ сетевой администратор. Она рассматривается как
Тестовая база данных
Тестовая база данных Для тестирования использовался Firebird 1.0 и база данных employee.gdb, входящая в дистрибутив этого сервера баз данных. На этом сервере был создан пользователь "gamer" с паролем "vermin"Для сокращения объема кода, проводящего подключение к базе данных, использовался
Что представляет собой база данных
Что представляет собой база данных База данных (database) — это своего рода камера хранения информации. Поскольку существуют различные типы баз данных, необходимо отметить, что в данной книге рассматриваются реляционные базы данных, как самый распространенный в настоящее
4.4.1. Пространственные типы данных в MySQL
4.4.1. Пространственные типы данных в MySQL MySQL имеет типы данных, которые соответствуют классам OpenGIS. Часть этих типов хранит одиночные значения геометрии:GEOMETRYPOINTLINESTRINGPOLYGONGEOMETRY может сохранять значения геометрии любого типа. Другие типы с одиночным значением (POINT, LINESTRING и POLYGON)
Модель данных <> база данных
Модель данных <> база данных Тот "мир", который был получен в процессе описания и анализа, является черновиком для структур ваших данных. Считается, что логическая модель должна описывать отношения и наборы. Обычная ошибка (и западня, присущая всем инструментам CASE) слепо
Одна база данных или много?
Одна база данных или много? Один сервер Firebird- за исключением локального встроенного сервера под Windows - может управлять множеством баз данных через свою собственную физическую файловую систему. Для больших предприятий не является необычным использование нескольких баз
База данных безопасности
База данных безопасности Когда пользователь соединяется с базой данных Firebird, его пароль сравнивается с зашифрованным паролем в базе данных безопасности. В версии 1.0.x имя базы данных isc4.gdb, в версии 1.5 - security.fdb. Это обычная база данных Firebird, таблица, используемая для
26.3. Сервер баз данных MySQL
26.3. Сервер баз данных MySQL 26.3.1. Установка сервера Для установки MySQL-сервера запустите менеджер пакетов Synaptic и выберите следующие пакеты:? mysql-server-5.1;? mysql-client-5.1;? mysql-admin.Первый пакет содержит последнюю версию MySQL-сервера (на данный момент эта пятая версия), во втором пакете
База данных графологического обеспечения
База данных графологического обеспечения Графологическим обеспечением называется информация, на основе которой проводится графологический и графометрический анализ. Она включает три основных элемента:• признаки почерка;• психологические характеристики;•