Hieronder staan vier manieren om de weergaven in een MariaDB-database op te sommen met behulp van SQL of de opdrachtregel.
De SHOW TABLES
Commando
De SHOW TABLES
commando geeft de niet-TEMPORARY
tabellen, sequenties en views in een bepaalde database. We kunnen de WHERE
. gebruiken clausule om het te beperken tot alleen views.
We kunnen ook de FULL
. gebruiken modifier om een tweede kolom terug te geven die het type weergeeft:
SHOW FULL TABLES
WHERE Table_Type LIKE 'VIEW';
Resultaat:
+--------------------+------------+ | Tables_in_pethouse | Table_type | +--------------------+------------+ | vownercount | VIEW | | vpetcount | VIEW | | vpetsowners | VIEW | | vpetstypes | VIEW | | vpettypecount | VIEW | +--------------------+------------+
Het weglaten van de WHERE
clausule geeft alle typen terug:
SHOW FULL TABLES;
Resultaat:
+--------------------+------------+ | Tables_in_pethouse | Table_type | +--------------------+------------+ | Owners | BASE TABLE | | PetTypes | BASE TABLE | | Pets | BASE TABLE | | vownercount | VIEW | | vpetcount | VIEW | | vpetsowners | VIEW | | vpetstypes | VIEW | | vpettypecount | VIEW | +--------------------+------------+
De SHOW TABLE STATUS
Commando
De SHOW TABLE STATUS
opdracht is vergelijkbaar met de SHOW TABLES
commando maar geeft uitgebreidere informatie over elk (niet-TEMPORARY
) tafel.
Voorbeeld:
SHOW TABLE STATUS;
Resultaat:
+---------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+------------------+-----------+ | 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 | Max_index_length | Temporary | +---------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+------------------+-----------+ | Owners | InnoDB | 10 | Dynamic | 6 | 2730 | 16384 | 0 | 0 | 0 | NULL | 2021-03-30 09:10:36 | NULL | NULL | utf8mb4_general_ci | NULL | | | 0 | N | | PetTypes | InnoDB | 10 | Dynamic | 4 | 4096 | 16384 | 0 | 0 | 0 | NULL | 2021-03-30 09:10:36 | NULL | NULL | utf8mb4_general_ci | NULL | | | 0 | N | | Pets | InnoDB | 10 | Dynamic | 8 | 2048 | 16384 | 0 | 32768 | 0 | NULL | 2021-04-01 15:42:43 | NULL | NULL | utf8mb4_general_ci | NULL | | | 0 | N | | vownercount | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | VIEW | NULL | NULL | | vpetcount | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | VIEW | NULL | NULL | | vpetsowners | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | VIEW | NULL | NULL | | vpetstypes | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | VIEW | NULL | NULL | | vpettypecount | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | VIEW | NULL | NULL | +---------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+------------------+-----------+
Het accepteert ook een WHERE
en LIKE
clausule voor het geval u de resultaten wilt verfijnen.
De information_schema.TABLES
Tabel
We kunnen ook de information_schema.TABLES
. opvragen tabel:
SELECT
TABLE_SCHEMA,
TABLE_NAME,
TABLE_TYPE
FROM
information_schema.TABLES
WHERE
TABLE_SCHEMA LIKE 'pethouse' AND TABLE_TYPE LIKE 'VIEW';
Resultaat:
+--------------+---------------+------------+ | TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE | +--------------+---------------+------------+ | PetHouse | vpettypecount | VIEW | | PetHouse | vpetstypes | VIEW | | PetHouse | vownercount | VIEW | | PetHouse | vpetcount | VIEW | | PetHouse | vpetsowners | VIEW | +--------------+---------------+------------+
Dit opvragen zonder de resultaten te filteren op TABLE_SCHEMA
retourneert weergaven van alle databases. Evenzo, het opvragen zonder te filteren op TABLE_TYPE
geeft alle tafeltypes terug.
De mariadb-show
Klant
Een andere manier om dit te doen is met de mariadb-show
nut.
Om deze optie te gebruiken, opent u een opdrachtregelprompt/terminalvenster en voert u het volgende uit (ter vervanging van pethouse
met de database waarin u geïnteresseerd bent):
mariadb-show pethouse;
Resultaat:
+---------------+ | Tables | +---------------+ | Owners | | PetTypes | | Pets | | vownercount | | vpetcount | | vpetsowners | | vpetstypes | | vpettypecount | +---------------+
Dit levert views en tabellen op.
De uitvoer toont alleen de namen van die databases, tabellen of kolommen waarvoor u bepaalde privileges heeft.
Als er geen database is opgegeven, worden alle overeenkomende databases getoond. Als er geen tabel is opgegeven, worden alle overeenkomende tabellen in de database getoond. Als er geen kolom is opgegeven, worden alle overeenkomende kolommen en kolomtypen in de tabel weergegeven.
De client kan ook worden uitgevoerd als mysqlshow
:
mysqlshow pethouse;
Dit hulpprogramma accepteert nogal wat opties, zoals --user
(zodat u de gebruikersnaam kunt doorgeven), --password
(zodat u het wachtwoord kunt doorgeven), enz.
Zie de documentatie van MariaDB voor een volledige lijst met opties.