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

MariaDBで列のデータ型を確認する4つの方法

    MariaDBは、列のデータ型を返す複数の方法を提供します。 MariaDBで特定の列のデータ型を取得する4つの方法を次に示します。

    SHOW COLUMNS ステートメント

    SHOW COLUMNS ステートメントは、特定のテーブルまたはビューの列に関する情報を表示します。テーブルまたはビューの名前を渡して、その列の情報を返すことができます:

    SHOW COLUMNS FROM Products;

    結果:

    +--------------------+---------------+------+-----+---------+-------+
    | Field              | Type          | Null | Key | Default | Extra |
    +--------------------+---------------+------+-----+---------+-------+
    | ProductId          | int(11)       | NO   | PRI | NULL    |       |
    | VendorId           | int(11)       | NO   | MUL | NULL    |       |
    | ProductName        | varchar(255)  | NO   |     | NULL    |       |
    | ProductPrice       | decimal(8,2)  | NO   |     | NULL    |       |
    | ProductDescription | varchar(1000) | YES  |     | NULL    |       |
    +--------------------+---------------+------+-----+---------+-------+

    必要に応じて、1つの列に絞り込むことができます:

    SHOW COLUMNS FROM Products
    WHERE Field = 'ProductName';

    結果:

    +-------------+--------------+------+-----+---------+-------+
    | Field       | Type         | Null | Key | Default | Extra |
    +-------------+--------------+------+-----+---------+-------+
    | ProductName | varchar(255) | NO   |     | NULL    |       |
    +-------------+--------------+------+-----+---------+-------+

    DESCRIBE / DESC ステートメント

    DESCRIBE ステートメントは、SHOW COLUMNS FROMのショートカットです。 構文:

    DESCRIBE Products;

    結果:

    +--------------------+---------------+------+-----+---------+-------+
    | Field              | Type          | Null | Key | Default | Extra |
    +--------------------+---------------+------+-----+---------+-------+
    | ProductId          | int(11)       | NO   | PRI | NULL    |       |
    | VendorId           | int(11)       | NO   | MUL | NULL    |       |
    | ProductName        | varchar(255)  | NO   |     | NULL    |       |
    | ProductPrice       | decimal(8,2)  | NO   |     | NULL    |       |
    | ProductDescription | varchar(1000) | YES  |     | NULL    |       |
    +--------------------+---------------+------+-----+---------+-------+

    列名を追加して1つの列に絞り込みます:

    DESCRIBE Products ProductName;

    結果:

    +-------------+--------------+------+-----+---------+-------+
    | Field       | Type         | Null | Key | Default | Extra |
    +-------------+--------------+------+-----+---------+-------+
    | ProductName | varchar(255) | NO   |     | NULL    |       |
    +-------------+--------------+------+-----+---------+-------+

    ワイルドカードを使用することもできます:

    DESCRIBE Products 'Product%';

    結果:

    +--------------------+---------------+------+-----+---------+-------+
    | Field              | Type          | Null | Key | Default | Extra |
    +--------------------+---------------+------+-----+---------+-------+
    | ProductId          | int(11)       | NO   | PRI | NULL    |       |
    | ProductName        | varchar(255)  | NO   |     | NULL    |       |
    | ProductPrice       | decimal(8,2)  | NO   |     | NULL    |       |
    | ProductDescription | varchar(1000) | YES  |     | NULL    |       |
    +--------------------+---------------+------+-----+---------+-------+

    DESCに短縮することもできます :

    DESC Products ProductName;

    結果:

    +-------------+--------------+------+-----+---------+-------+
    | Field       | Type         | Null | Key | Default | Extra |
    +-------------+--------------+------+-----+---------+-------+
    | ProductName | varchar(255) | NO   |     | NULL    |       |
    +-------------+--------------+------+-----+---------+-------+

    information_schema.columns 表示

    information_schema.columns ビューには列に関する情報が含まれています:

    SELECT 
        COLUMN_NAME, 
        DATA_TYPE, 
        CHARACTER_MAXIMUM_LENGTH AS MAX_LENGTH, 
        CHARACTER_OCTET_LENGTH AS OCTET_LENGTH 
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE TABLE_SCHEMA = DATABASE()
    AND TABLE_NAME = 'Products' 
    AND COLUMN_NAME = 'ProductName';

    結果:

    +-------------+-----------+------------+--------------+
    | COLUMN_NAME | DATA_TYPE | MAX_LENGTH | OCTET_LENGTH |
    +-------------+-----------+------------+--------------+
    | ProductName | varchar   |        255 |         1020 |
    +-------------+-----------+------------+--------------+

    この場合、DATABASE()を使用しました 現在のデータベースの名前を返す関数。または、特定のデータベースの名前を使用することもできます。

    mariadb-show ユーティリティ

    mariadb-show ユーティリティは、MariaDBデータベースの構造(データベース、テーブル、列、インデックス)を表示します。

    このユーティリティは単独で実行されます。つまり、MariaDB内からこれを実行しないでください。代わりに、新しいターミナル/コマンドラインウィンドウを開き、そこから実行します。

    例:

    mariadb-show KrankyKranes Products ProductName

    結果:

    +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
    | Field       | Type         | Collation          | Null | Key | Default | Extra | Privileges                      | Comment |
    +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
    | ProductName | varchar(255) | utf8mb4_general_ci | NO   |     |         |       | select,insert,update,references |         |
    +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+

    この例では、KrankyKranes データベースの名前、Products はテーブルであり、ProductName 興味のあるコラムです。

    このユーティリティには、mysqlshowを使用してアクセスすることもできます。 mariadb-showの場所 。ユーティリティはかなりの数のオプションを受け入れます。詳細については、MariaDBのドキュメントを参照してください。


    1. MySQLエラー2006:mysqlサーバーがなくなりました

    2. PostgresでJSONフィールドにインデックスを作成するにはどうすればよいですか?

    3. Javaプログラムで呼び出すJavaストアドプロシージャ

    4. GUIを使用してMySQLWorkbenchで現在の接続を表示する方法