УрокВведение в Базы Данных

И так все вы наверняка слышали такое словосочетание Базы Данных. Интуитивно я думаю понятно для чего эти базы предназначены. В этом уроке я изложу основные моменты касательно баз данных, кода пока никакого не будет.

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

Историю появления я расписывать не буду, кого заинтересует - информацию найдет.

Приступим. Базы данных в интернете появились не сразу, возникает сразу вопрос: а каким образом раньше хранились данные на веб-сайтах? Да по началу в обычных файлах, однако умные люди быстро поняли, что подобное хранение очень не удобно, т.к. если с чтением информации еще худо-бедно все было неплохо, то с записью, изменением информации в файле было очень сложно.

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

  1. Считывает информацию из файлов, и предоставляет ее нам в удобной форме.
  2. Выполняет различного рода проверки при записи данных
  3. Разграничивает права доступа для различных категорий пользователей

и т.д..

Теперь перейдем к самим базам данных.

Вся информация в базе хранится в виде таблиц, таблицы имеют колонки, колонки соответствуют типам данных(их много). Каждая запись в таблице соответствует набору полей из соответсвующих колонок. т.е.:

Эта картинка представляет собой наглядный пример того как используются таблицы для хранения и представления данных. Я думаю вы оценили удобство, сразу все понятно, сразу можно найти чего, сколько и по какой цене. Например если вам нужны все товары которые стоят меньше 50 сразу идете в колонку цена и отмечаете эти товары, первая колонка если вы заметили - id записи он просто Обязан быть уникальным по нему можно однозначно идентифицировать запись в таблице. Также это поле называется primary key.Вроде все понятно, все удобно и легко. И вот тут возникает вопрос: "ну хорошо, таблица, и что сложного? Отчего вокруг этого весь сыр-бор, есть даже какие то люди - проектировщики баз данных? Все же хорошо все данные в таблицу кидаем и все ок!" Однако если вы так сделаете то ваши таблицы будут тяжеловесны, медленно обрабатываться, они будут огромны и не структурированные. Найти запись по id будет легко, а найти все записи удовлетворяющие определенным критериям? А если этих критериев будет очень много? Именно для этого был придуман способ хранить разные части записи по разным таблицам:

Вот, сама таблица не изменилась, я лишь добавил к таблице еще одно поле - производитель. Зачем я это сделал? Ответ почти очевиден, производителей товара может быть не так много как товаров(например где то 10), в то время как наименований товаров может быть огромное количество(тысячи, десятки тысяч). Т.к. запись имени производителя занимает какой то размер, то при соотношении количества товаров и количества производителей мы будем хранить тысячи одинаковых полей, что нам естественно не очень нравиться. Именно для этого мы заводим отдельную таблицу для производителей, где храним всю нужную о них информацию, а в основной таблице храним id-шники производителей. Сразу понятно, что id-шник занимает куда меньше памяти, следовательно при больших объемах данных мы получим огромную выгоду. Также в любой момент мы можем узнать кто сделал данный товар, просто взяв id-шник и посмотрев соответствующую запись в таблице производителей, это ускоряет поиск. Я думаю что если вы немного подумаете, то сможете привести еще массу примеров и схем расположения таблиц, полей, связей и т.д..

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

В следующем уроке я рассмотрю уже моменты касательно SQL-запросов, создание БД, таблиц и еще кое чего интересного.

Комментарии

Аватар пользователя D.Choomc
D.Choomc написал:

О! Начались базы данных! буду вкуривать неспешно и рассудительно под хорошее винцо))
Спасибо за урок)

14.09.2010 00:34
Аватар пользователя powerscin
powerscin написал:

Если будут какие вопросы, спрашивай прямо здесь.

14.09.2010 18:55
Аватар пользователя D.Choomc
D.Choomc написал:

на этом этапе пока понятно всё))

15.09.2010 02:07
Аватар пользователя oleg
oleg написал:

битая ссылка на 2 картинку!

04.12.2011 00:58

Комментировать