| MySQL-вступ |
|
Як тільки ми замислюємося про яку-небудь впорядковану архівацію інформації, ми неминуче приходимо до думки про створення бази даних. Створивши її, наприклад, в Microsoft Access, ми, полегшено зітхаємо і на якийсь час втихомирюємося. Але цей спокій триває не довго. І ось на нашому горизонті вже маячить наступне завдання, продиктоване життєвою необхідністю, - потрібно забезпечити доступ до цих даних через internet з робочих станцій, на яких, цілком можливо встановлені різні ОС. Природно не ми перші, кому необхідно вирішити завдання подібного роду. Досвіду інших людей і засобів для дозволу цієї проблеми досить багато. Але вистачить ліричних відступів. Ми скористаємося мовою, яка дозволяє користувачам, що знають один набір команд, використовувати їх, щоб створювати, шукати, змінювати, і передавати інформацію, незалежно від того, чи працюють вони на персональному комп'ютері, мережевій робочій станції, або на універсальній ЕОМ. У книзі є велика кількість входів, кожен з яких відповідає певній особливості. Для кожної такій особливості, може бути декілька незалежних фрагментів даних, наприклад ім'я, телефонний номер, і адреса. Передбачимо, що ми повинні сформатувати цю адресну книгу у вигляді таблиці з рядками і стовпцями. Кожен рядок (звана також записом) відповідатиме певній особливості; кожен стовпець міститиме значення для кожного типа даних - імені, телефонного номера, і адреси що представляється в кожному рядку. Адресна книга могла б виглядати таким чином:
Те, що ви отримали, є основою реляційної бази даних, як і було визначено на початку цього обговорення - а саме, двомірною (рядок і стовпець) таблицею інформації. Проте реляційні бази даних рідко складаються з однієї таблиці. Така таблиця менша, ніж файлова система. Створивши декілька таблиць взаємозв'язаної інформації, ви зможете виконати складніші і потужніші операції з вашими даними. Потужність бази даних залежить від зв'язку, який ви можете створити між фрагментами інформації, а не від самого фрагмента інформації. Пов'язання однієї таблиці з іншою
Багато потужних функцій можна виконати, витягуючи інформацію з цих таблиць згідно з вказаними параметрами, особливо коли ці параметри включають фрагменти інформації зв'язані в різних таблицях один з одним. Наприклад, візьмемо - докторів. Передбачимо, доктор Perepelkin захотів отримати номери телефонів всіх своїх пацієнтів. Щоб витягувати цю інформацію, він міг би пов'язати таблицю з номерами телефонів пацієнтів (по адресній книзі) з таблицею яка б вказувала, який з пацієнтів - його. Хоча, в цьому простому прикладі, він міг би тримати це в голові і відразу отримувати номери телефонів пацієнтів, ці таблиці можуть бути дуже великими і дуже складними. Програми реляційної бази даних розроблялися для того, щоб обробляти великі і складні сукупності даних такого типа, що, очевидно, є більш універсальним методом на діловому світі. Навіть якщо б база даних лікарні містила сотні або тисячі імен - як це вірогідно і буває на практиці - одна команда SQL могла б видати докторові інформацію, якої він потребував, майже негайно. Мова SQL досить складна і багатогранна. При роботі ж невеликої фірми, або бази даних в мережі internet круг завдань обмежений. Тому була створена невелика, але дуже швидка і функціональна реляційна СУБД MYSQL. Отже, як ви вже здогадалися в MYSQL задіяна не вся мова SQL, а лише необхідна його частина. Але не потрібно переживати відносно урізаності. Також є підтримка ключових полів і спеціальних полів в операторові CREATE, підтримка чисел довгою від 1 до 4, рядків змінної довжини і міток часу, інтерфейс з мовами C і perl. Заснована на потоках, швидка система пам'яті, утиліта перевірки і ремонту таблиці, всі дані зберігаються у форматі Iso8859_1. Всі операції роботи з рядками не звертає уваги на регістр символів в оброблюваних рядках, псевдоніми застосовні як до таблиць, так і до окремих колонок в таблиці, всі поля мають значення по замовчуванню. INSERT можна використовувати на будь-якій підмножині полів. Легкість управління таблицею, включаючи додавання і видалення ключів і полів. Можна виконувати команди SQL безпосередньо з командного рядка системи unix або з інтерактивного режиму MYSQL. СУБД MYSQL має бібліотеку C API. Її можна використовувати для запитів до бази даних, вставки даних, створення таблиць і тому подібне C API підтримує всі функції MYSQL. Мова perl підтримується відразу двома способами: І щоб підвести підсумок, хотілося б розповісти одну історію. Одній невеликій фірмі потрібно було зробити на сайті базу даних по товарах. Людина, якій доручили зробити базу даних, створила їїї на Delphi. Так от, коли прийшов час розміщувати базу в мережі, виявився дуже неприємний факт. Всі ISP працюють на Unix, відповідно для розміщення подібної бази потрібно ставити у провайдера свій комп'ютер і платити, в середньому, близько 50 у.о. за хостинг. У випадку ж якщо СУБД зроблена під MYSQL, то |