Mysql
 sql >> Baza danych >  >> RDS >> Mysql

4 sposoby na wyświetlenie listy wszystkich widoków w MySQL

Poniżej znajdują się cztery sposoby na wyświetlenie listy widoków w bazie danych MySQL za pomocą SQL lub wiersza poleceń.

SHOW TABLES Polecenie

SHOW TABLES polecenie wyświetla listę niebędącą TEMPORARY tabele, sekwencje i widoki w danej bazie danych MySQL. Możemy użyć WHERE klauzula zawężająca ją tylko do poglądów.

Możemy również użyć FULL modyfikator, aby zwrócić drugą kolumnę wyświetlającą typ:

SHOW FULL TABLES
WHERE Table_Type LIKE 'VIEW';

Wynik:

+-----------------+------------+
| Tables_in_music | Table_type |
+-----------------+------------+
| valbumsartists  | VIEW       |
| valbumsgenres   | VIEW       |
| vallalbums      | VIEW       |
| vallartists     | VIEW       |
| vallgenres      | VIEW       |
+-----------------+------------+

Pominięcie WHERE klauzula zwraca wszystkie typy:

SHOW FULL TABLES;

Wynik:

+-----------------+------------+
| Tables_in_music | Table_type |
+-----------------+------------+
| Albums          | BASE TABLE |
| Artists         | BASE TABLE |
| Genres          | BASE TABLE |
| valbumsartists  | VIEW       |
| valbumsgenres   | VIEW       |
| vallalbums      | VIEW       |
| vallartists     | VIEW       |
| vallgenres      | VIEW       |
+-----------------+------------+

SHOW TABLE STATUS Polecenie

W MySQL SHOW TABLE STATUS polecenie jest podobne do polecenia SHOW TABLES polecenie, ale zawiera bardziej szczegółowe informacje o każdym z nich (nie TEMPORARY ) tabeli.

Przykład:

SHOW TABLE STATUS;

Wynik:

+----------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| Name           | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time         | Update_time         | Check_time | Collation          | Checksum | Create_options | Comment |
+----------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
| Albums         | InnoDB |      10 | Dynamic    |   20 |            819 |       16384 |               0 |        32768 |         0 |             21 | 2021-11-13 12:56:02 | 2021-11-13 12:56:13 | NULL       | utf8mb4_0900_ai_ci |     NULL |                |         |
| Artists        | InnoDB |      10 | Dynamic    |   16 |           1024 |       16384 |               0 |            0 |         0 |             17 | 2021-11-13 12:56:02 | 2021-11-13 12:56:13 | NULL       | utf8mb4_0900_ai_ci |     NULL |                |         |
| Genres         | InnoDB |      10 | Dynamic    |    8 |           2048 |       16384 |               0 |            0 |         0 |              9 | 2021-11-13 12:56:02 | 2021-11-13 12:56:13 | NULL       | utf8mb4_0900_ai_ci |     NULL |                |         |
| valbumsartists | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | 2021-11-15 06:02:24 | NULL                | NULL       | NULL               |     NULL | NULL           | VIEW    |
| valbumsgenres  | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | 2021-11-15 06:09:47 | NULL                | NULL       | NULL               |     NULL | NULL           | VIEW    |
| vallalbums     | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | 2021-11-15 06:12:51 | NULL                | NULL       | NULL               |     NULL | NULL           | VIEW    |
| vallartists    | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | 2021-11-15 06:13:02 | NULL                | NULL       | NULL               |     NULL | NULL           | VIEW    |
| vallgenres     | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | 2021-11-15 06:12:36 | NULL                | NULL       | NULL               |     NULL | NULL           | VIEW    |
+----------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+

Akceptuje również WHERE i LIKE klauzula na wypadek, gdybyś chciał zawęzić wyniki.

information_schema.TABLES Tabela

Możemy również wysłać zapytanie do information_schema.TABLES tabela:

SELECT 
    TABLE_SCHEMA, 
    TABLE_NAME,
    TABLE_TYPE
FROM 
    information_schema.TABLES 
WHERE 
    TABLE_SCHEMA LIKE 'music' AND TABLE_TYPE LIKE 'VIEW';

Wynik:

+--------------+----------------+------------+
| TABLE_SCHEMA | TABLE_NAME     | TABLE_TYPE |
+--------------+----------------+------------+
| Music        | valbumsartists | VIEW       |
| Music        | valbumsgenres  | VIEW       |
| Music        | vallgenres     | VIEW       |
| Music        | vallalbums     | VIEW       |
| Music        | vallartists    | VIEW       |
+--------------+----------------+------------+

W tym przypadku zwróciłem wszystkie widoki z bazy danych o nazwie music . Zapytanie o to bez filtrowania wyników według TABLE_SCHEMA zwraca widoki ze wszystkich baz danych. Podobnie, zapytanie bez filtrowania według TABLE_TYPE zwraca wszystkie typy tabel.

mysqlshow Klient

Innym sposobem na to jest mysqlshow pożytek.

Aby użyć tej opcji, otwórz wiersz poleceń/okno terminala i uruchom następujące polecenie:

mysqlshow --user root --password music;

Pamiętaj, aby zastąpić music z interesującą Cię bazą danych i root z odpowiednim użytkownikiem. --password bit powoduje, że użytkownik jest proszony o podanie hasła.

Wynik:

Enter password: 
Database: music
+----------------+
|     Tables     |
+----------------+
| Albums         |
| Artists        |
| Genres         |
| valbumsartists |
| valbumsgenres  |
| vallalbums     |
| vallartists    |
| vallgenres     |
+----------------+

mysqlshow klient zwraca widoki i tabele.

Dane wyjściowe wyświetlają tylko nazwy tych baz danych, tabel lub kolumn, do których użytkownik ma pewne uprawnienia.

Jeśli nie podano bazy danych, wyświetlane są wszystkie pasujące bazy danych. Jeśli nie podano tabeli, wyświetlane są wszystkie pasujące tabele w bazie danych. Jeśli nie podano żadnej kolumny, wyświetlane są wszystkie pasujące kolumny i typy kolumn w tabeli.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jednostki daty i czasu w MySQL (pełna lista)

  2. Wdróż bazę danych MySQL w chmurze hybrydowej za pomocą ClusterControl

  3. BAZA DANYCH MYSQL DROP

  4. wybierz count(*) z tabeli mysql w php

  5. Generowanie losowego i unikalnego ciągu 8 znaków za pomocą MySQL