Как вывести данные из MySQL – руководство для не шаманов

Как вывести данные из MySQL – руководство для не шаманов

От автора: что вы мобильник так трясете? Письмо пришло на почтовый ящик, а вы его прочитать не можете? Понятно! Вы бы еще, чтобы вывести данные из 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. Отобразим на экране ту же строку, полученную в предыдущем запроса. Вот код примера:

<?php
$con_str=mysql_connect('localhost', 'root', '', 'world');
  if(mysql_connect('localhost','root')){
		echo "Hello!!!";
	}
  mysql_select_db('db1',$con_str);

$result=mysql_query("SELECT * FROM `world`.`city` WHERE id=670");
  while($row = mysql_fetch_array($result)){
    $id=$row['ID'];
    $name=$row['Name'];
    $country_code=$row['CountryCode'];
   $district=$row['District'];
    $population=$row['Population'];

    echo "<p>$id - $name - $country_code - $district - $population</p>";
    }
 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, не обязательно быть шаманом и плясать под звуки бубна. Нам для этого хватило возможностей, предоставляемых СУБД. Кстати, для «изъятия» письма из телефона бубен тоже не нужен :)

Хотите изучить MySQL?

Прямо сейчас посмотрите 24-х часовой курс по базе данных MySQL!

Смотреть курс

Метки:

Комментарии Вконтакте:

Комментарии Facebook:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Я не робот.

Spam Protection by WP-SpamFree