Базы данных: MySQL


Используем базу данных MySQL



  Автор: Бардин Павел

  Источник: ,

Основное отличие от всех остальных СУБД это то, что она является бесплатной. В силу того, что MySQL бесплатна, она поддерживается очень многими хостинг провайдерами.

Здесь я расскажу как связать PHP и MySQL т.е. как получить данные из базы данных MySQL в PHP скрипт.

Ну вообще-то это не так сложно. Всё, что нужно знать:

  • Хост - адрес сервера баз данных MySQL
  • Имя базы данных
  • Имя пользователя
  • Пароль - пароль для доступа к БД
  • Некоторые SQL команды

Далее я буду предполагать, что у вас уже заведена база данных на сервере хостера или на домашнем компьютере (MySQL можно скачать с сайта ).

Итак, алгоритм такой:

  1. Устанавливаем соединение с сервером
  2. Выбираем нужную базу данных
  3. Делаем запрос к серверу баз данных (SQL запрос)
  4. Обрабатываем результат запроса, если это необходимо
  5. Закрываем соединение (отключаемся от сервера БД)

По части 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
 

Hosted by uCoz