Базы данных: MySQL
Используем базу данных MySQL
Автор: Бардин Павел
Источник: ,
Основное отличие
от всех остальных СУБД это то, что она является бесплатной. В силу
того, что MySQL бесплатна, она поддерживается очень многими хостинг
провайдерами.
Здесь я расскажу как связать PHP и MySQL т.е. как получить данные
из базы данных MySQL в PHP скрипт.
Ну вообще-то это не так сложно. Всё, что нужно знать:
- Хост - адрес сервера баз данных MySQL
- Имя базы данных
- Имя пользователя
- Пароль - пароль для доступа к БД
- Некоторые SQL команды
Далее я буду предполагать, что у вас уже заведена база данных на
сервере хостера или на домашнем компьютере (MySQL можно скачать с
сайта ).
Итак, алгоритм такой:
- Устанавливаем соединение с сервером
- Выбираем нужную базу данных
- Делаем запрос к серверу баз данных (SQL запрос)
- Обрабатываем результат запроса, если это необходимо
- Закрываем соединение (отключаемся от сервера БД)
По части PHP, чтобы работать с БД надо знать несколько функций
(полный список смотри в PHP мануале).
- mysql_connect();
- mysql_select_db();
- mysql_query();
- mysql_fetch_array();
- mysql_close();
Это тот минимум, который позволит вам устанавливать соединение с
сервером MySQL, выбирать базы данных и делать запросы к серверу баз
данных.
Для справки! Все PHP функции которые
предназначены для работы с базой данных MySQL имеют префикс
mysql_
Я не буду рассматривать синтаксис каждой функции. Надеюсь у вас
есть PHP Manual (его можно скачать с сайта ). Рассмотрим эти функции
в деле т.е. на примере.
Допустим в нашей базе данных храниться одна таблица со следующей
структурой:
имя поля |
тип(длина) |
описание |
id |
целый(2) |
уникальный номер |
name |
символьный(100) |
имя |
tel |
символьный(20) |
телефон |
Таблица имеет имя: customer, а наша база данных
называется database.
Допустим, что ваши данные для подключения к серверу MySQL
Такие:
- Хост: localhost
- Имя пользователя: Guest
- Пароль: mypassword
Для начала необходимо создать нашу таблицу customer.
Напишем скрипт который создаст в базе данных database таблицу
customer. Назовём файлик как install.php.
Файл install.php
Функция mysql_connect() возвращает идентификатор соединения. Этот
идентификатор необходимо указывать во всех MySQL функциях. Можно
провести аналогию с указателем на файл (file pointer), который
используется функциями по работе с файлами. В параметрах функции мы
указали хост, имя пользователя и пароль к базе данных.
На сервере MySQL храниться не только ваша база данных. Сервер
может обслуживать тысячи таких баз данных. Поэтому, чтобы получить
доступ к своей базе данных, необходимо выбрать её. Выбор базы данных
осуществляется функцией mysql_select_db(). В параметрах указывается:
имя требуемой базы данных $DBName и идентификатор соединения $Link,
который мы получили с помощью функции mysql_connect().
После того как мы подключились к серверу MySQL и выбрали нашу
базу данных, мы делаем SQL запрос. Литературу по языку SQL вы
найдёте на сайте . В запросе
указываем, что мы хотим создать таблицу с именем customer и
со структурой приведённой в таблице выше. Запрос к серверу MySQL
осуществляется с помощью функции mysql_query(). В параметрах
указывается сам запрос $Query и идентификатор соединения $Link.
И, наконец, отключаемся от сервера (закрываем соединение)
функцией mysql_close(). В параметрах указываем идентификатор того
соединения, которое нужно закрыть.
Для справки! На самом деле скрипт может
устанавливать несколько соединений с сервером MySQL. Всё зависит
от хостинга на котором вы сидите.
Если вы всё сделали правильно, то на сервере MySQL в вашей базе
данных, появится таблица customer.
После того как мы создали таблицу, её надо заполнить т.е.
записать в нёё какие-нибудь данные (записи). Напишем скрипт, который
будет добавлять запись в нашу таблицу. Назовём файл скрипта как
insert.php.
Файл insert.php
Посмотрев этот скрипт вы заметете, что он отличается от
предыдущего только строкой запроса $Query.
Теперь когда мы умеем записывать данные в базу данных, перейдём к
процедуре запроса данных из базы MySQL. Для этого напишем скрипт и
назовём файлик select.php.
Файл select.php
Ну тут... всё понятно :) :) :) Естественно изменилась строка
запроса $Query, которая теперь содержит SQL-оператор SELECT. Так же
добавился небольшой код while() { .... }. Скажу только, что функция
mysql_fetch_array() обрабатывает результат запроса и возвращает
массив полей текущей! Внимание! текущей строки результата.
Константа MYSQL_ASSOC указывает на то, что функция должна вернуть
ассоциативный массив полей. После того как функция
mysql_fetch_array() обработает все строки результата, она вернёт
значение FALSE и тогда цикл while() - не выполниться.
Тут в цикле используем функцию printf(). Она очень похожа на эту
же функцию в языке C. Справку по функции printf() можете посмотреть
в PHP мануале.
Надеюсь моя статья хоть немного помогла вам понять связь PHP и
MySQL.
Бардин Павел, 2003.
При перепечатке любого материала
с сайта, видимая ссылка на источник www.warayg.narod.ru
и все имена, ссылки авторов обязательны.
© 2005
|