MariaDB giver flere måder at returnere datatypen for en kolonne på. Her er fire måder at få datatypen for en given kolonne i MariaDB.
SHOW COLUMNS
Erklæring
SHOW COLUMNS
sætning viser information om kolonnerne i en given tabel eller visning. Vi kan videregive navnet på tabellen eller visningen for at returnere oplysninger om dens kolonner:
SHOW COLUMNS FROM Products;
Resultat:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
Vi kan indsnævre det til kun én kolonne, hvis det kræves:
SHOW COLUMNS FROM Products
WHERE Field = 'ProductName';
Resultat:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
DESCRIBE
/ DESC
Erklæring
DESCRIBE
statement er en genvej til SHOW COLUMNS FROM
syntaks:
DESCRIBE Products;
Resultat:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
Du skal blot tilføje kolonnenavnet for at indsnævre det til én kolonne:
DESCRIBE Products ProductName;
Resultat:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
Du kan også bruge jokertegn:
DESCRIBE Products 'Product%';
Resultat:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
Du kan også forkorte den til DESC
:
DESC Products ProductName;
Resultat:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
information_schema.columns
Vis
information_schema.columns
visningen indeholder oplysninger om kolonner:
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';
Resultat:
+-------------+-----------+------------+--------------+ | COLUMN_NAME | DATA_TYPE | MAX_LENGTH | OCTET_LENGTH | +-------------+-----------+------------+--------------+ | ProductName | varchar | 255 | 1020 | +-------------+-----------+------------+--------------+
I dette tilfælde brugte jeg DATABASE()
funktion for at returnere navnet på den aktuelle database. Du kan alternativt bruge navnet på en specifik database.
mariadb-show
Hjælpeprogram
mariadb-show
værktøj viser strukturen af en MariaDB-database (databaser, tabeller, kolonner og indekser).
Dette hjælpeprogram køres på egen hånd. Med andre ord, kør ikke dette inde fra MariaDB. Åbn i stedet et nyt terminal-/kommandolinjevindue og kør det derfra.
Eksempel:
mariadb-show KrankyKranes Products ProductName
Resultat:
+-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment | +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | ProductName | varchar(255) | utf8mb4_general_ci | NO | | | | select,insert,update,references | | +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
I dette eksempel, KrankyKranes
er navnet på databasen, Products
er tabellen og ProductName
er den kolonne, jeg er interesseret i.
Dette værktøj kan også tilgås ved hjælp af mysqlshow
sted for mariadb-show
. Værktøjet accepterer en hel del muligheder. Se MariaDBs dokumentation for mere information.