MariaDB proporciona múltiples formas de devolver el tipo de datos de una columna. Aquí hay cuatro formas de obtener el tipo de datos de una columna dada en MariaDB.
El SHOW COLUMNS
Declaración
El SHOW COLUMNS
muestra información sobre las columnas en una tabla o vista determinada. Podemos pasar el nombre de la tabla o vista para devolver información sobre sus columnas:
SHOW COLUMNS FROM Products;
Resultado:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
Podemos reducirlo a una sola columna si es necesario:
SHOW COLUMNS FROM Products
WHERE Field = 'ProductName';
Resultado:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
El DESCRIBE
/ DESC
Declaración
El DESCRIBE
declaración es un atajo para SHOW COLUMNS FROM
sintaxis:
DESCRIBE Products;
Resultado:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
Simplemente agregue el nombre de la columna para limitarlo a una sola columna:
DESCRIBE Products ProductName;
Resultado:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
También puede utilizar comodines:
DESCRIBE Products 'Product%';
Resultado:
+--------------------+---------------+------+-----+---------+-------+ | 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 | | +--------------------+---------------+------+-----+---------+-------+
También puede acortarlo a DESC
:
DESC Products ProductName;
Resultado:
+-------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+---------+-------+ | ProductName | varchar(255) | NO | | NULL | | +-------------+--------------+------+-----+---------+-------+
El information_schema.columns
Ver
El information_schema.columns
la vista contiene información sobre las columnas:
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';
Resultado:
+-------------+-----------+------------+--------------+ | COLUMN_NAME | DATA_TYPE | MAX_LENGTH | OCTET_LENGTH | +-------------+-----------+------------+--------------+ | ProductName | varchar | 255 | 1020 | +-------------+-----------+------------+--------------+
En este caso utilicé DATABASE()
función para devolver el nombre de la base de datos actual. Alternativamente, podría usar el nombre de una base de datos específica.
El mariadb-show
Utilidad
El mariadb-show
La utilidad muestra la estructura de una base de datos MariaDB (bases de datos, tablas, columnas e índices).
Esta utilidad se ejecuta por sí sola. En otras palabras, no ejecute esto desde MariaDB. En su lugar, abra una nueva ventana de terminal/línea de comandos y ejecútela desde allí.
Ejemplo:
mariadb-show KrankyKranes Products ProductName
Resultado:
+-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment | +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+ | ProductName | varchar(255) | utf8mb4_general_ci | NO | | | | select,insert,update,references | | +-------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
En este ejemplo, KrankyKranes
es el nombre de la base de datos, Products
es la tabla y ProductName
es la columna que me interesa.
También se puede acceder a esta utilidad usando mysqlshow
lugar de mariadb-show
. La utilidad acepta bastantes opciones. Consulte la documentación de MariaDB para obtener más información.