Написать письмо авторам  
 

УЧЕБНИК PHP


справочник функций <Оnline>

Об учебнике

Обновление

Оглавление

  1. Основы PHP
  2. Операторы языка PHP
  3. Строковые функции
  4. Массивы
  5. Функции
  6. Работа с файлами
  7. Регулярные выражения
  8. Сессии и cookies в PHP
  9. Работа с FTP
  10. Проверка данных
  11. Гостевая книга
  12. PHP и MySQL

Продолжение следует



PHP и MySQL. Совместная работа

Предыдущая Следующая

Реляционные базы данных



Задача длительного хранения и обработки информации появилась практически сразу с появлением первых компьютеров. Для решения этой задачи в конце 60-х годов были разработаны специализированные программы, получившие название систем управления базами данных (СУБД). СУБД проделали длительный путь эволюции от системы управления файлами, через иерархические и сетевые базы данных. В конце 80-х годов доминирующей стала система управления реляционными базами данных (СУРБД). С этого времени такие СУБД стали стандартом де-факто, и для того, чтобы унифицировать работу с ними, был разработан структурированный язык запросов (SQL), который представляет собой язык управления именно реляционными базами данных.

Замечание

Взаимодействие с базой данных происходит при помощи Системы Управления Базой Данных (СУБД), которая расшифровывает запросы и производит операции с информацией в базе данных. Поэтому более правильно было бы говорить о запросе к СУБД и о взаимодействии с СУБД из Web-приложения. Но так как это несколько усложняет восприятие, далее везде мы будем говорить "база данных", подразумевая при этом СУБД.

Существуют следующие разновидности баз данных:

  • иерархические;
  • реляционные;
  • объектно-ориентированные;
  • гибридные.

Иерархическая база данных основана на древовидной структуре хранения информации. В этом смысле иерархические базы данных очень напоминают файловую систему компьютера.

В реляционных базах данных данные собраны в таблицы, которые в свою очередь состоят из столбцов и строк, на пересечении которых расположены ячейки. Запросы к таким базам данных возвращает таблицу, которая повторно может участвовать в следующем запросе. Данные в одних таблицах, как правило, связаны с данными других таблиц, откуда и произошло название "реляционные".

В объектно-ориентированных базах данных данные хранятся в виде объектов. С объектно-ориентированными базами данных удобно работать, применяя объектно-ориентированное программирование. Однако, на сегодняшний день такие базы дан-ных еще не достигли популярности реляционных, поскольку пока значительно уступают им в производительности.

Гибридные СУБД совмещают в себе возможности реляционных и объектно-ориентированных баз данных.

В Web-приложениях, как правило, используются реляционные базы данных. Мы будем рассматривать пример базы данных, на которой основано большинство форумов, в том числе и тот, который мы далее будем разрабатывать. В этой базе хранится информация об авторах форума (authors), о названиях форумов (forums), о темах форума (themes) и, собственно, сами сообщения (posts). Таким образом, наша база данных будет включать следующие таблицы:

Таблица 1 Таблицы базы данных Forum.

authors

forums

posts

themes

Модель реляционной базы данных представляет данные в виде таблиц, разбитых на строки и столбцы, на пересечении которых находятся данные. Пример такой таблицы показан в Табл.2:

Таблица 2 Структура реляционной базы данных.

 

ряд

   

строка

id_forum

name

Description

 

1

дизайн

Обсуждаются вопросы дизайна

 

2

MySQL

Обсуждаются вопросы, связанные с MySQL

 

3

PHP

Обсуждаются вопросы, связанные с PHP

 

4

разное

Другие вопросы

В табл.2 приведён пример таблицы forums базы данных большого форума, в котором имеется несколько разделов, посвящённых различным этапам построения Web-приложения. Каждая строка этой таблицы представляет собой один раздел форума. Четыре строки таблицы представляют собой весь форум.

Каждый столбец таблицы forums представляет один элемент данных для каждого из форумов. Столбец id_forum содержит уникальный идентификатор форума, столбец name содержит название форума и столбец description содержит краткое описание проблемы, обсуждаемой на форуме.

Кратко особенности реляционной базы данных можно описать следующим образом:

  • Данные хранятся в таблицах, состоящих из столбцов и строк;
  • На пересечении каждого столбца и строчки стоит в точности одно значение;
  • У каждого столбца есть своё имя, которое служит его названием, и все значения в одном столбце имеют один тип. Например, в столбце id_forum все значения имеют целочисленный тип, а в строке name - текстовый;
  • Столбцы располагаются в определённом порядке, который определяется при создании таблицы, в отличие от строк, которые располагаются в произвольном порядке. В таблице может не быть не одной строчки, но обязательно должен быть хотя бы один столбец;

Запросы к базе данных возвращают результат в виде таблиц, которые тоже могут выступать как объект запросов.



Предыдущая Следующая

 
  Наверх