Как вывести таблицу mysql
Перейти к содержимому

Как вывести таблицу mysql

  • автор:

Как вывести всю таблицу mysql на экран

Гость

Как вывести всю таблицу mysql на экран. К примеру в ней поля id, name, adres. Нужно вывести все id, все name и все adres.
Дополнено (1). это только запрос, а нужно вывести на экран, причем не одну строку а всю таблицу

Юрий Чудновский

Select * from имя_таблицы

> это только запрос, а нужно вывести на экран

А чем ты выводить собрался-то? Через астрал, что ли? В консоли? В похапэ? На дельфях? Как получить всю таблицу я тебе написал, а как «выводить на экран» это уже зависит от того, чем ты это делаешь.

# echo ‘select * from bnet_BNET;’ | mysql -uroot -p bnet | wc -l
Enter password:
243
работает )

Neox

На каком языке тебе вывести?

iXAPEK

Привожу скрипт PHP с выводом в HTML-табличку(так как Чаще всего используется вместе с мускулом)

$query = musql_query(«SELECT * FROM table»);
echo ‘

‘;
while ($array = mysql_fetch_array($query.
echo ‘

‘;
>
echo ‘

‘.$array[‘id’].’ ‘.$array[‘name’].’ ‘.$array[‘adres’].’

sQuaD

Через phpmyadmin просматривай

Антон Витальевич

Ruby way:

Батя
24.04.2018
Сэнкс за инфу

  • Везде описанно, как выбрать данные из базы MySQL, а как их вывести на экран при помощи PHP?
  • MYSQL + PHP Как при помощи php вставить картинку в базу данных MYSQL и потом вывести на экран?
  • MySQL — Как обновить всю таблицу одним запросом?
  • Как в mysql очистить всю таблицу от столбца Name
  • Каким образом можно сделать простейший запрос к бд mysql с клиента, получить запись с сервера и вывести ее на экран?

Как вывести таблицу mysql

Для получения данных в MySQL применяется команда SELECT . Например, получение всех данных из таблицы Users:

SELECT * FROM Users

Рассмотрим получение данных на примере таблицы Users, созданной в прошлых, которая имеет следующее определение:

CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER)
Объектно-ориентированный стиль

При выполнении команды SELECT метод query() объекта mysqli возвращает набор полученных строк, который мы можем перебрать с помощью цикла. Например, перебор с помощью цикла foreach :

$sql = "SELECT * FROM Users"; if($result = $conn->query($sql)) < foreach($result as $row)< $userid = $row["id"]; $username = $row["name"]; $userage = $row["age"]; >>

Здесь $result представляет набор строк. Каждый его элемент, который передается в переменную $row , хранит данные отдельной строки в виде ассоциативного массива, где ключи элементов — названия столбцов.

Вместо цикла foreach также можно использовать другие виды циклов. Например, применение цикла while :

$sql = "SELECT * FROM Users"; if($result = $conn->query($sql))< while($row = $result->fetch_array()) < $userid = $row["id"]; $username = $row["name"]; $userage = $row["age"]; >>

В данном случае метод $result->fetch_array() выбирает текущую строку из набора в переменную $row и переходит к следующей. Когда строк не останется, метод возвратит false , и произойдет выход из цикда. Полученное значени $row опять же представляет строку в виде ассоциативного массива.

После окончания работы с полученным набором строк мы можем очистить отведенную для него память с помощью метода free() :

$result->free();

Теперь посмотрим на примере. Определим скрипт index.php , которая будет выводить значения из таблицы Users:

   METANIT.COM  

Список пользователей

connect_error)< die("Ошибка: " . $conn->connect_error); > $sql = "SELECT * FROM Users"; if($result = $conn->query($sql))< $rowsCount = $result->num_rows; // количество полученных строк echo "

Получено объектов: $rowsCount

"; echo ""; foreach($result as $row)< echo ""; echo ""; echo ""; echo ""; echo ""; > echo "
IdИмяВозраст
" . $row["id"] . "" . $row["name"] . "" . $row["age"] . "
"; $result->free(); > else< echo "Ошибка: " . $conn->error; > $conn->close(); ?>

Таким образом, при обращении к скрипту index.php браузер отобразит список данных, полученных из БД:

Получение данных из MySQL в PHP с помощью MySQLi

Дополнительно стоит отметить, что с помощью свойства $result->num_rows мы можем получить количество строк, извлеченных из БД.

Процедурный стиль

При процедурном стиле функция mysqli_query() при успешном выполнении команды SELECT возвращает набор строк, который можно перебрать с помощью цикла:

$sql = "SELECT * FROM Users"; if($result = mysqli_query($conn, $sql)) < foreach($result as $row)< $userid = $row["id"]; $username = $row["name"]; $userage = $row["age"]; >>

Как и при объектно-ориентированном подходе, полученные строки представляют ассоциативные массивы, где ключи элементов — названия столбцов.

Пример перебоа с помощью цикла while :

$sql = "SELECT * FROM Users"; if($result = mysqli_query($conn, $sql)) < while($row = mysqli_fetch_array($result))< $userid = $row["id"]; $username = $row["name"]; $userage = $row["age"]; >>

Функция mysqli_fetch_array() выбирает текущую строку из набора в переменную $row и переходит к следующей. Когда строк не останется, метод возвратит false , и произойдет выход из цикла.

После окончания работы с полученным набором строк мы можем очистить отведенную для него память с помощью функции mysqli_free_result() , в которую передается полученный набор строк:

mysqli_free_result($result);
   METANIT.COM  

Список пользователей

$sql = "SELECT * FROM Users"; if($result = mysqli_query($conn, $sql))< $rowsCount = mysqli_num_rows($result); // количество полученных строк echo "

Получено объектов: $rowsCount

"; echo ""; foreach($result as $row)< echo ""; echo ""; echo ""; echo ""; echo ""; > echo "
IdИмяВозраст
" . $row["id"] . "" . $row["name"] . "" . $row["age"] . "
"; mysqli_free_result($result); > else < echo "Ошибка: " . mysqli_error($conn); >mysqli_close($conn); ?>

Mysql — вывести таблицу в таблицу html по столбцам/строкам- не нашла как, подскажите?

Составила таблицу в html (шапка таблицы есть), пыталась из таблицы mysqli вывести всё по клеткам таблицы. Пробовала отдельно и массивным типом — всегда вместо значения получала ошибку в столбце. Инет ничего не дал по этому поводу. Может вы подскажите как это сделать? И можно ли сделать вобще? (без неизвесных мне символов с++ или java. )
Поскольку в инете пишут только вариант, когда вывод происходит со стороны таблицы mysqli, а не запросом из html таблицы .

Тобишь, я хочу в html взять из mysqli данные ПОСТРОЧНО// ПО ОДНОМУ ЗНАЧЕНИЮ ИЗ ТАБЛИЦЫ (insert into html, from mysqli),

а предлагают только из mysqli положить в html (insert from mysqli, in html).

Не знаю как ещё объянить свою точку зрения и мучения. Помогите, поясните, подскажите?

Как вывести список всех таблиц MySQL и количество строк в каждой из них впри помощи PHP?

Надо вывести список всех таблиц и чтобы рядом стояло количество строк в это таблице.
Что я делаю не так?

Список пуст!
"; > else < while ($table = mysqli_fetch_array($result)) < $numread = mysqli_num_rows($link, "SELECT * FROM `$table[0]`"); echo "
таб $table[0]. Кол-во строк: $numread
"; > > ?>
  • Вопрос задан более трёх лет назад
  • 5929 просмотров

2 комментария

Простой 2 комментария

Konata69lol

Konata Izumi @Konata69lol
Что выводит?
Какие-то ошибки?

FSystem88

Иван @FSystem88 Автор вопроса
Konata Izumi, выводит только список таблиц, а количество строк не выводит
Решения вопроса 1

HeadOnFire

Игорь Воротнёв @HeadOnFire
PHP, Laravel & WordPress Evangelist

SHOW TABLES FROM database_name прекрасно работает когда база не выбрана. Здесь мы показываем таблицы в базе, а не в $db_table. Исходя из вашего нейминга, вы просите таблицу показать ее таблицы, что абсурдно само по себе. Обращайтесь к базе. Или, если вы базу предварительно уже выбрали, то достаточно SHOW TABLES .

Далее, для SELECT * FROM table_name уже сначала нужно выбрать базу данных (которую вы опрашивали на предмет таблиц в первом запросе), или же обращаться к таблице в формате database_name.table_name.

Ну и, вместо того чтобы делать выборку всех строк со всеми колонками, спросите сразу SELECT COUNT(*) FROM database_name.table_name .

Еще проще и быстрее это сделать с помощью такого запроса:

SELECT table_name, table_rows FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'your_database_name';

Результат этого запроса:

+-----------------------+------------+ | table_name | table_rows | +-----------------------+------------+ | wp_terms | 10 | | wp_yoast_seo_meta | 61 | | wp_yoast_seo_links | 33 | | wp_commentmeta | 0 | | wp_term_taxonomy | 10 | | wp_ewwwio_queue | 352 | | wp_usermeta | 114 | | wp_options | 281 | | wp_users | 5 | | wp_term_relationships | 49 | | wp_ewwwio_images | 1048 | | wp_links | 0 | | wp_postmeta | 21408 | | wp_termmeta | 0 | | wp_comments | 0 | | wp_posts | 738 | +-----------------------+------------+

Единственное, что нужно учесть — если таблицы у вас InnoDB, то данные цифры будут более-менее точными, но не совсем. В силу механизмов оптимизации. Так что если нужно «приблизительно» понимать — используйте данный метод. Если нужно с точностью до одной строки — тогда COUNT.

Ну и еще можно сделать SHOW TABLE STATUS , находять в выбранной базе данных. Точность подсчета количества строк на InnoDB такая же, как и предыдущем методе, но зато здесь будет еще много полезной информации. Например — avg_row_length, data_length, index_length и другое.

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

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