РНР и базы данных

Издавна люди искали надежное средство для хранения информации. Сначала это были наскальные рисунки, затем появилась письменность. Люди стали записывать мысли с помощью букв и знаков препинания на листах бумаги. С появлением компьютера ситуация резко изменилась: теперь огромное количество данных может храниться на жестком диске в виде текстовых файлов. Но и это не удовлетворило потребности человека.

Поэтому ученые разработали специальную структуру хранения информации, называемую базой данных. Сегодня базы данных применяются почти во всех сферах человеческой жизни, поэтому разработчики РНР не могли не включить функции для работы с ними.

База данных – это хранилище данных. Конечно, существует еще множество развернутых определений этого понятия, но здесь они не внесут большей ясности.

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

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

Базы данных бывают нескольких видов, которые отличаются друг от друга структурой хранения данных. Сегодня реляционная модель баз данных является самой популярной среди всех прочих. Поэтому мы будем рассматривать именно ее.

Любая реляционная база данных состоит из таблиц, которые представляют собой именованные двумерные матрицы. В таблице выделяют поля (столбцы) и записи (строки).

С помощью полей мы задаем характеристики: id (идентификационный номер), name (название), author (автор), num_pages (количество страниц). Смысл записи состоит в выделении характеристик отдельного товара. Обратите внимание на поле id, которое представляет собой идентификационный номер книги. Другими словами, несколько книг не могут одновременно иметь одинаковые значения этой характеристики. Такие поля называют ключами.

Обычно работа с базами данных осуществляется посредством запросов языка SQL (Structured Query Language). С помощью них можно добавлять и удалять таблицы, вносить новые данне и изменять старые, выбирать данные по определенному критерию и многое другое. В свою очередь язык РНР позволяет установить соединение с сервером базы данных, выбрать одну из них для работы, а также посылать SQL-запросы.

Итак, начнем непосредственное изучение функций РНР для работы с базами данных с того, что создадим небольшой опытный образец, с которым будем работать на протяжении всего цикла обучающих статей о БД и PHP.

Соединение с сервером базы данных

В первую очередь нужно убедиться, что сервер базы данных работает. Для этого запустите файл с расширением .bat. После этого в Диспетчере задач Windows должен появиться процесс с названием mysql-nt.exe.

Чтобы начать работу с базой данных, нужно подключиться к серверу, где она находится. В нашем случае это будет локальный сервер базы данных MySQL. В РНР для этого есть две функции: mysql_connect() и mysql_pconnect().

Рассмотрим в качестве примера.

1
2
3
4
5
6
7
8
9
10
11
12
<?php
// соединение с сервером базы данных
Slink = mysql_connect("localhost", "root", "");
if (!$link)
{
echo "He могу соединиться с сервером базы данных";
exit();
}
echo "Соединение с сервером базы данных произошло успешно";
// закрытие соединения с сервером базы данных
mysql_close($link);
?>

В этом примере функция mysql_connect() открывает соединение с сервером базы данных с именем localhost для пользователя root с паролем в виде пустой строки. При успешном выполнении она возвращает значение типа resource, которое является указателем на соединение с MySQ, в противном случае – значение FALSE. Как вы, наверное, догадались, дальнейшая работа с базой данных осуществляется с помощью полученного указателя. Если соединение с сервером базы данных более не требуется, то его можно закрыть с помощью функции mysql_close(). Эту функцию можно использовать и без указания параметров: в этом случае закроется последнее созданное соединение.

Функция mysql_pconnect() используется в тех случаях, когда соединение с сервером базы данных нужно поддерживать постоянно. Другими словами, соединение не закроется, даже если завершится выполнение программы. Функция mysql_close() также не закрывает соединения, созданные посредством функция mysql_pconnect().

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100