Від автора: що ви мобільник так трясете? Лист надійшов на поштову скриньку, а ви його прочитати не можете? Зрозуміло! Ви б ще, щоб вивести дані з MySQL, з бубном біля ПК побігали. Після «вилучення» листи цим і збиралися зайнятися, і навіть бубон прихопили? Ну гаразд, не буду заважати. А для решти «не шаманів» розповім, як «вийняти» дані з MySQL без бубна.
Засоби виводу phpMyAdmin
Відкладіть поки в сторону бубон, очі повзучого пітона і намисто з мухоморів. Випробуємо для отримання інформації з БД менш «магічні» способи. Почнемо розгляд з можливостей, які надає для цього оболонка phpMyAdmin. Запускаємо програму, зліва в списку вибираємо потрібну базу. Щоб вивести дані з таблиці MySQL, в основному верхньому меню переходимо в розділ «Огляд». Після цього отримуємо вміст вибраної таблиці.
В результаті нам вдалося в три клацання отримати доступ до вмісту потрібної бази даних. Але щось обрана для експериментів БД надто вже приїлася. Звичайно, всі ми любимо «звіряток», але від наших «танців з бубнами» вони всі швидко розбіжаться. Нелегка це справа «шаманство»
Щоб не мучитися з створенням нової БД і не витрачати даремно дорогоцінний час, завантажити готову базу з офіційного ресурсу MySQL. А зекономлені таким чином хвилини витратимо на навчання «помахом чарівної палички» адміністрування СУБД. Установка завантаженої бази відбувається в phpMyAdmin через вкладку «Імпорт».
Імпортована БД «World» містить набагато більше інформації, і тому більш цікава для навчання (на випадок, якщо ми заскучаємо під час освоєння матеріалу). Її «потенціал» можна побачити, відкривши будь-яку з її таблиць. Наприклад, «City»:
Поринаємо в мову структурованих запитів
Все це цікаво, але що робити, якщо потрібно вивести рядок MySQL, а не повністю таблицю? Візуально знайти серед сотні рядків шукану практично неможливо. Для цього потрібно скористатися засобами SQL.
У мові структурованих запитів для виведення відсортованих даних використовується оператор SELECT. Його синтаксис:
SELECT `имя_поля1` … `имя_поляN` FROM `ім’я_таблиці` WHERE умова
Наведемо приклад SQL запиту до таблиці «city». Наприклад, нам потрібно вивести рядок, в якій значення стовпця id одно 670:
SELECT * FROM `city` WHERE `id`=670
Запит на виведення з бази даних MySQL ми починаємо зазначенням команди (SELECT). Потім зірочкою (*) ми «говоримо» СУБД, що хочемо зробити вибірку всіх значень рядка із (FROM) таблиці city, де значення стовпця id дорівнює заданому значенню (`id`=670). Вводимо запит у вікно редактора (вкладка «SQL»). Ось який результат повертає нам сервер:
Сервер повернув нам рядок, що відповідає визначеним у запиті критеріям. Вище система виводить код запиту, а також автоматично додає до нього свою частину. За замовчуванням, з допомогою директиви ORDER BY програма (НЕ СУБД) сортує результати вибірки за значенням стовпця Name (`city`.`Name`). При цьому значення стовпця сортуються за зростанням (ASC).
Зверніть увагу на «тонкощі» синтаксису (написання) запитів на виведення таблиць MySQL. Назви ім’я таблиці екрануються не одинарними лапками, а гравісом. Він є знаком слабкого наголоси. На клавіатурі він розташований на клавіші з літерою «Е».
Це важливо, оскільки при використанні одинарних лапок система MySQL буде видавати помилку про порушення синтаксису
написання команди запиту. Для наочності спробуйте самі. В результаті побачите наступний результат:
Вибірка даних з коду PHP
Тепер постараємося зробити висновок даних з MySQL в PHP. Відобразимо на екрані ту ж рядок, отриману в попередньому запиту. Ось приклади:
$id – $name – $country_code – $district – $population
“;
}
mysql_close();
?>
В результаті вивантаження MySQL ми отримали ту ж саму рядок:
Але що, якщо потрібно відобразити всю таблицю? Для цього доведеться трохи змінити код SQL запиту:
SELECT * FROM `world`.`city`
Ось, що ми вивели в браузері:
Тобто, ми відобразили всі дані таблиці. Але вони занадто громіздкі, і не можуть поміщатися в екранної області браузера. З допомогою оператора LIMIT у запиті можна задати, які рядка виводити (з якої по яку). Наприклад, нам потрібно переглянути дані з 1 по 10 рядка. Тоді запит для виводу з MySQL буде виглядати так:
SELECT * FROM `world`.`city` LIMIT 0 , 10
Зверніть увагу, що для використання в PHP ми вказуємо ім’я бази і таблиці через точку, окремо экранировав один від одного.
Експорт БД
Про те, як експортувати базу даних MySQL, ми докладно розповідали в одному з наших попередніх матеріалів. Сьогодні ми розглянемо варіант перенесення даних різних форматів. Найчастіше потрібно імпортувати інформацію в SQL з CSV і навпаки.
Насправді CSV є звичайним текстовим форматом, у якому всі рядки розділені комами. Він ідеально підходить для переносу інформації в інтернеті, оскільки файли в цьому форматі «важать» в кілька разів менше. Крім цього CSV легко розширюємо, що дозволяє в одному файлі помістити потрібну кількість БД і при необхідності додавати нові.
Для перенесення інформації з цього формату в MySQL веб-програмування пишуться великі шматки коду, опису яких доведеться присвятити окрему статтю. Але ми підемо іншим шляхом, і розглянемо, як експортувати дані з CSV в MySQL за допомогою phpMyAdmin.
Заходимо в оболонку. В основному меню зверху переходимо в розділ «Імпорт». Потім «файл». Вказуємо через «Огляд вашого комп’ютера» потрібний файл, формат і тиснемо внизу «Ок».
Імпорт даних закінчено. Тепер залишилося визначити структуру таблиць і тип даних стовпців.
Як бачите, щоб вивести дані з MySQL, не обов’язково бути шаманом і танцювати під звуки бубна. Для цього Нам вистачило можливостей, що надаються СУБД. До речі, для «вилучення» листи з телефону бубон теж не потрібен