Что такое MySQL?
MySQL – это одна из самых популярных и распространенных СУБД (система управления базами данных) в интернете.
Она не предназначена для работы с большими объемами информации, ее применение идеально подходит для интернет сайтов, как небольших, так и достаточно крупных. MySQL отличается хорошей скоростью работы, надежностью и гибкостью.
СУБД MySQL — одна из множества баз данных, поддерживаемых в PHP. Система MySQL распространяется бесплатно и обладает достаточной мощностью для решения реальных задач.
SQL — Structured Query Language, что означает структурированный язык запросов. Этот язык является стандартным средством для доступа к различным базам данных.
Наиболее популярным приложением по созданию и работе с базами данных MySQL является программа phpMyAdmin.
PhpMyAdmin это Web-приложение с открытым кодом, написанное на языке PHP и представляющее собой Web-интерфейс для администрирования баз данных MySQL. С помощью программы phpMyAdmin можно создавать, удалять и редактировать таблицы базы данных, выполнять отдельные SQL-запросы, создавать и удалять пользователей, изменять их привилегии.
Программа phpMyAdmin также позволяет через Web-браузер осуществлять администрирование сервера MySQL, запускать команды SQL по работе с содержимым таблиц баз данных, управлять СУБД MySQL без непосредственного ввода SQL команд, предоставляя дружественный пользовательский интерфейс.
Создание базы данных MySQL
Создание новой базы данных MySQL осуществляется при помощи SQL-команды CREATE DATABASE:
CREATE DATABASE IF NOT EXISTS `base`
DEFAULT CHARACTER SET cp1251 COLLATE cp1251_bin
Создание таблицы MySQL
Создание новой таблицы осуществляется при помощи SQL-команды CREATE TABLE. Например, таблица books для книжного магазина будет содержать пять полей: ISBN, автор, название, цена и количество экземпляров:
CREATE TABLE books (ISBN CHAR(13) NOT NULL,
PRIMARY KEY (ISBN),
author VARCHAR(30),
title VARCHAR(60),
price FLOAT(4,2),
quantity TINYINT UNSIGNED);
Добавление данных в эту таблицу осуществляется при помощи SQL-команды INSERT. Например:
INSERT INTO books ( ISBN, author, title, price, quantity )
VALUES ('5-8459-0184-7', 'Привет',
'Освой самостоятельно PHP5 за 24 часа', '129', '5');
Для извлечения данных из таблицы служит оператор SELECT. Он извлекает данные из базы, выбирая строки, которые отвечают заданному критерию поиска. Оператор SELECT сопровождает немалое количество опций и вариантов использования.
Символ * означает, что необходимы все поля:
Символ * означает, что необходимы все поля:
SELECT * FROM books;
Для получения доступа только к некоторому полю следует указать его имя в инструкции SELECT:
SELECT author, title, price FROM books;
Для удаления строк из базы данных используется оператор DELETE. Ненужные строки указываются при помощи конструкции WHERE. Например:
DELETE FROM books WHERE quantity = 0;
Связь PHP с MySQL
Чтобы получить доступ к базе данных из Web, используя PHP, надо сделать основные шаги:
- Подключение к серверу MySQL.
- Выбор базы данных.
- Выполнение запроса к базе данных.
- Получение результата запроса.
- Отсоединение от базы данных.
Для подключения к серверу базы данных в PHP есть очень хорошая функция mysqli_connect(). Ее аргументы: имя компьютера, имя пользователя и пароль.
Если PHP используется в сочетании с сервером Apache, то можно воспользоваться функцией mysqli_pconnect().
В этом случае соединение с сервером не исчезает после завершения работы программы или вызова функции mysqli_close(). Функции mysql_connect() и mysqli_pconnect() возвращают идентификатор подключения, если все прошло успешно. Например:
$link = mysqli_pconnect ();
if ( !$link ) die ("Невозможно подключение к MySQL");
После того, как соединение с сервером MySQL установлено, нужно выбрать базу данных. Для этого используется функция mysqli_select_db(). Ее аргумент: имя базы данных. Функция возвращает true, если указанная база данных существует и доступ к ней возможен. Например:
$db = "sample";
mysqli_select_db ( $db ) or die ("Невозможно открыть $db");
mysqli_close — эта функция разрывает соединение с сервером MySQL, и возвращает true при успешном выполнении операции и false в противном случае. Функция принимает в качестве аргумента дескриптор соединения с базой данных, возвращаемый функцией mysql_connect. Например:
// устанавливаем соединение с базой данных
$dbcnx = mysqli_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx)
{
// Выводим предупреждение
echo ("<P>В настоящий момент сервер базы данных не доступен, поэтому
корректное отображение страницы невозможно.</P>");
// Завершаем работу в случае неудачи
exit();
}
if(mysqli_close($dbcnx)) // разрываем соединение
{
echo("Соединение с базой данных прекращено");
}
else
{
echo("Не удалось завершить соединение");
}
Для добавления, удаления, изменения и выбора данных нужно сконструировать и выполнить запрос SQL. Для этого в языке PHP существует функция mysqli_query(). Ее аргумент: строка с запросом. Функция возвращает идентификатор запроса. Например:
$db = "sample";
$link = mysqli_pconnect ();
if ( !$link )
die ("Невозможно подключение к MySQL");
mysqli_select_db ( $db ) or die ("Невозможно открыть $db");
$query = "INSERT INTO books
VALUES ('966-7393-80-1', 'Аллен Вайк',
'PHP. Справочник', '213', '4')";
mysqli_query ( $query );
mysqli_close ( $link );