MariaDB
 sql >> база данни >  >> RDS >> MariaDB

4 начина за изброяване на всички изгледи в база данни на MariaDB

По-долу са изброени четири начина за изброяване на изгледите в база данни на MariaDB с помощта на SQL или командния ред.

SHOW TABLES Команда

SHOW TABLES командата изброява не-TEMPORARY таблици, последователности и изгледи в дадена база данни. Можем да използваме WHERE клауза, за да я стесните до само изгледи.

Можем също да използваме FULL модификатор за връщане на втора колона, която показва типа:

SHOW FULL TABLES 
WHERE Table_Type LIKE 'VIEW';

Резултат:

+--------------------+------------+
| Tables_in_pethouse | Table_type |
+--------------------+------------+
| vownercount        | VIEW       |
| vpetcount          | VIEW       |
| vpetsowners        | VIEW       |
| vpetstypes         | VIEW       |
| vpettypecount      | VIEW       |
+--------------------+------------+

Пропускане на WHERE клауза връща всички типове:

SHOW FULL TABLES;

Резултат:

+--------------------+------------+
| Tables_in_pethouse | Table_type |
+--------------------+------------+
| Owners             | BASE TABLE |
| PetTypes           | BASE TABLE |
| Pets               | BASE TABLE |
| vownercount        | VIEW       |
| vpetcount          | VIEW       |
| vpetsowners        | VIEW       |
| vpetstypes         | VIEW       |
| vpettypecount      | VIEW       |
+--------------------+------------+

SHOW TABLE STATUS Команда

SHOW TABLE STATUS командата е подобна на SHOW TABLES команда, но предоставя по-подробна информация за всеки (не-TEMPORARY ) таблица.

Пример:

SHOW TABLE STATUS;

Резултат:

+---------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+------------------+-----------+
| 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      |
+---------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+------------------+-----------+

Също така приема WHERE и LIKE клауза, в случай че искате да стесните резултатите.

information_schema.TABLES Таблица

Можем също да направим заявка за information_schema.TABLES таблица:

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

Резултат:

+--------------+---------------+------------+
| TABLE_SCHEMA | TABLE_NAME    | TABLE_TYPE |
+--------------+---------------+------------+
| PetHouse     | vpettypecount | VIEW       |
| PetHouse     | vpetstypes    | VIEW       |
| PetHouse     | vownercount   | VIEW       |
| PetHouse     | vpetcount     | VIEW       |
| PetHouse     | vpetsowners   | VIEW       |
+--------------+---------------+------------+

Запитване за това без филтриране на резултатите по TABLE_SCHEMA връща изгледи от всички бази данни. По същия начин, заявка за него без филтриране по TABLE_TYPE връща всички типове таблици.

mariadb-show Клиент

Друг начин да го направите е с mariadb-show полезност.

За да използвате тази опция, отворете прозореца на командния ред/терминала и изпълнете следното (заменяйки pethouse с базата данни, от която се интересувате):

mariadb-show pethouse;

Резултат:

+---------------+
|    Tables     |
+---------------+
| Owners        |
| PetTypes      |
| Pets          |
| vownercount   |
| vpetcount     |
| vpetsowners   |
| vpetstypes    |
| vpettypecount |
+---------------+

Това връща изгледи и таблици.

Резултатът показва само имената на тези бази данни, таблици или колони, за които имате някои привилегии.

Ако не е дадена база данни, се показват всички съвпадащи бази данни. Ако не е дадена таблица, тогава се показват всички съвпадащи таблици в базата данни. Ако не е дадена колона, тогава се показват всички съвпадащи колони и типове колони в таблицата.

Клиентът може да се стартира и като mysqlshow :

mysqlshow pethouse;

Тази помощна програма приема доста опции, като --user (за да можете да подадете потребителското име), --password (за да можете да предадете паролата) и т.н.

Вижте документацията на MariaDB за пълен списък с опции.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как работи UTC_DATE() в MariaDB

  2. Как работи TIMESTAMP() в MariaDB

  3. Как да настроите MariaDB (Master-Slave) репликация в CentOS/RHEL 7 и Debian 8/9

  4. MariaDB JSON_ARRAY_INSERT() Обяснено

  5. MariaDB JSON_QUERY() Обяснено