sql >> データベース >  >> RDS >> Mysql

MySQLですべてのビューを一覧表示する4つの方法

    以下は、SQLまたはコマンドラインを使用してMySQLデータベースのビューを一覧表示する4つの方法です。

    SHOW TABLES コマンド

    SHOW TABLES コマンドは非TEMPORARYをリストします 特定のMySQLデータベース内のテーブル、シーケンス、およびビュー。 WHEREを使用できます ビューだけに絞り込むための句。

    FULLも使用できます タイプを表示する2番目の列を返す修飾子:

    SHOW FULL TABLES
    WHERE Table_Type LIKE 'VIEW';

    結果:

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

    WHEREを省略します 句はすべてのタイプを返します:

    SHOW FULL TABLES;

    結果:

    +-----------------+------------+
    | 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 コマンド

    MySQLでは、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 |
    +----------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+
    | 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    |
    +----------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+--------------------+----------+----------------+---------+

    WHEREも受け入れます およびLIKE 結果を絞り込みたい場合の句。

    information_schema.TABLES

    information_schema.TABLESをクエリすることもできます 表:

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

    結果:

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

    この場合、musicというデータベースからすべてのビューを返しました。 。 TABLE_SCHEMAで結果をフィルタリングせずにこれをクエリする すべてのデータベースからビューを返します。同様に、TABLE_TYPEでフィルタリングせずにクエリを実行します すべてのテーブルタイプを返します。

    mysqlshow クライアント

    これを行う別の方法は、mysqlshowを使用することです。 効用。

    このオプションを使用するには、コマンドラインプロンプト/ターミナルウィンドウを開き、次のコマンドを実行します。

    mysqlshow --user root --password music;

    必ずmusicを置き換えてください 興味のあるデータベースとroot 該当するユーザーと。 --password ビットを指定すると、ユーザーはパスワードの入力を求められます。

    結果:

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

    mysqlshow クライアントはビューとテーブルを返します。

    出力には、ユーザーがいくつかの特権を持っているデータベース、テーブル、または列の名前のみが表示されます。

    データベースが指定されていない場合は、一致するすべてのデータベースが表示されます。テーブルが指定されていない場合は、データベース内の一致するすべてのテーブルが表示されます。列が指定されていない場合は、テーブル内の一致するすべての列と列タイプが表示されます。


    1. MacにSQLOPSをインストールする方法

    2. 列タイプを変更し、null以外に設定します

    3. インポートエクスポートmysqlデータベースコマンドライン超高速

    4. PostgreSQLで自動インクリメントの主キーを設定するにはどうすればよいですか?