Головна MySQL MySQL-вступ
MySQL-вступ

Як тільки ми замислюємося про яку-небудь впорядковану архівацію інформації, ми неминуче приходимо до думки про створення бази даних. Створивши її, наприклад, в Microsoft Access, ми, полегшено зітхаємо і на якийсь час втихомирюємося. Але цей спокій триває не довго. І ось на нашому горизонті вже маячить наступне завдання, продиктоване життєвою необхідністю, - потрібно забезпечити доступ до цих даних через internet з робочих станцій, на яких, цілком можливо встановлені різні ОС. Природно не ми перші, кому необхідно вирішити завдання подібного роду. Досвіду інших людей і засобів для дозволу цієї проблеми досить багато. Але вистачить ліричних відступів.

Ми скористаємося мовою, яка дозволяє користувачам, що знають один набір команд, використовувати їх, щоб створювати, шукати, змінювати, і передавати інформацію, незалежно від того, чи працюють вони на персональному комп'ютері, мережевій робочій станції, або на універсальній ЕОМ.

SQL ( Зазвичай вимовна як "СЕКВЕЛ") символізує собою Структуровану Мову Запитів. Це - мова, яка дає вам можливість створювати і працювати в реляційних базах даних, які є наборами зв'язаної інформації що зберігається в таблицях. Що таке - реляційна база даних? Реляційна база даних - це тіло зв'язаної інформації, що зберігається в двомірних таблицях. Нагадує адресну або телефонну книгу.

У книзі є велика кількість входів, кожен з яких відповідає певній особливості. Для кожної такій особливості, може бути декілька незалежних фрагментів даних, наприклад ім'я, телефонний номер, і адреса. Передбачимо, що ми повинні сформатувати цю адресну книгу у вигляді таблиці з рядками і стовпцями. Кожен рядок (звана також записом) відповідатиме певній особливості; кожен стовпець міститиме значення для кожного типа даних - імені, телефонного номера, і адреси що представляється в кожному рядку. Адресна книга могла б виглядати таким чином:

 

Ім'я Телефон Адрес
Petrov 3232323 Address1
Ivanov 3636666 Address2
Sidoroff 3434342 Address3

 

Те, що ви отримали, є основою реляційної бази даних, як і було визначено на початку цього обговорення - а саме, двомірною (рядок і стовпець) таблицею інформації. Проте реляційні бази даних рідко складаються з однієї таблиці. Така таблиця менша, ніж файлова система. Створивши декілька таблиць взаємозв'язаної інформації, ви зможете виконати складніші і потужніші операції з вашими даними. Потужність бази даних залежить від зв'язку, який ви можете створити між фрагментами інформації, а не від самого фрагмента інформації. Пов'язання однієї таблиці з іншою

Нехай персонажі в нашій першій таблиці ( адресної книги ) - це пацієнти лікарні. У іншій таблиці, ми могли б запам'ятати додаткову інформацію про цих пацієнтів. Стовпці другої таблиці могли б бути помічені як Пацієнт, Доктор, Страховка, і Баланс.

 

Пацієнт Доктор Страховка Баланс
Ivanov Vostrikovr B.C./B.S. $272.99
Petrov Vostrikovr None $44.76
Brock Perepelkin Health,Inc $977.47

 

Багато потужних функцій можна виконати, витягуючи інформацію з цих таблиць згідно з вказаними параметрами, особливо коли ці параметри включають фрагменти інформації зв'язані в різних таблицях один з одним. Наприклад, візьмемо - докторів. Передбачимо, доктор Perepelkin захотів отримати номери телефонів всіх своїх пацієнтів. Щоб витягувати цю інформацію, він міг би пов'язати таблицю з номерами телефонів пацієнтів (по адресній книзі) з таблицею яка б вказувала, який з пацієнтів - його. Хоча, в цьому простому прикладі, він міг би тримати це в голові і відразу отримувати номери телефонів пацієнтів, ці таблиці можуть бути дуже великими і дуже складними. Програми реляційної бази даних розроблялися для того, щоб обробляти великі і складні сукупності даних такого типа, що, очевидно, є більш універсальним методом на діловому світі. Навіть якщо б база даних лікарні містила сотні або тисячі імен - як це вірогідно і буває на практиці - одна команда SQL могла б видати докторові інформацію, якої він потребував, майже негайно. Мова SQL досить складна і багатогранна.

При роботі ж невеликої фірми, або бази даних в мережі internet круг завдань обмежений. Тому була створена невелика, але дуже швидка і функціональна реляційна СУБД MYSQL. Отже, як ви вже здогадалися в MYSQL задіяна не вся мова SQL, а лише необхідна його частина. Але не потрібно переживати відносно урізаності.
Перерахую основні приємні сторони пакету MYSQL - це багатопоточність, підтримка декількох одночасних запитів, оптимізація зв'язків з приєднанням багатьох даних за один прохід, записи фіксованої і змінної довжини, ODBC драйвер в комплекті з ісходником, гнучка система привілеїв і паролів, до 16 ключів в таблиці, кожен ключ може мати до 15 полів.

Також є підтримка ключових полів і спеціальних полів в операторові CREATE, підтримка чисел довгою від 1 до 4, рядків змінної довжини і міток часу, інтерфейс з мовами C і perl. Заснована на потоках, швидка система пам'яті, утиліта перевірки і ремонту таблиці, всі дані зберігаються у форматі Iso8859_1. Всі операції роботи з рядками не звертає уваги на регістр символів в оброблюваних рядках, псевдоніми застосовні як до таблиць, так і до окремих колонок в таблиці, всі поля мають значення по замовчуванню. INSERT можна використовувати на будь-якій підмножині полів. Легкість управління таблицею, включаючи додавання і видалення ключів і полів.

Можна виконувати команди SQL безпосередньо з командного рядка системи unix або з інтерактивного режиму MYSQL. СУБД MYSQL має бібліотеку C API. Її можна використовувати для запитів до бази даних, вставки даних, створення таблиць і тому подібне C API підтримує всі функції MYSQL. Мова perl підтримується відразу двома способами:
- Імпортований інтерфейс з perl з mini-sql, розроблений Андреасом Коєнігом.
- Є модуль perl DBD
Також доступний 32-бітовий драйвер ODBC для MYSQL. Він дозволяє запрошувати і отримувати дані з інших джерел з підтримкою ODBC. Окрім технічних подробиць можна додати, що MYSQL працює як на Unix, так і на платформі Windows 95/98, він дуже простий і зручний в роботі.

І щоб підвести підсумок, хотілося б розповісти одну історію. Одній невеликій фірмі потрібно було зробити на сайті базу даних по товарах. Людина, якій доручили зробити базу даних, створила їїї на Delphi. Так от, коли прийшов час розміщувати базу в мережі, виявився дуже неприємний факт. Всі ISP працюють на Unix, відповідно для розміщення подібної бази потрібно ставити у провайдера свій комп'ютер і платити, в середньому, близько 50 у.о. за хостинг. У випадку ж якщо СУБД зроблена під MYSQL, то
И чтобы подвести итог, хотелось бы рассказать одну историю. Одной небольшой фирме потребовалось сделать на сайте базу данных по товарам. Человек, которому поручили сделать базу данных, создал её на Delphi. Так вот, когда пришло время размещать базу в сети, обнаружился очень неприятный факт. Все ISP работают на Unix, соответственно для размещения подобной базы нужно ставить у провайдера свой компьютер и платить, в среднем, около 50 у.е. за хостинг. В случае же если СУБД сделана под MySQL, то платити доведеться лише за мегабайти: MYSQL - це зручно і практично.

 
© 2008-2013 PHPist