sql >> Databáze >  >> RDS >> MariaDB

4 způsoby, jak zkontrolovat typ dat sloupce v MariaDB

MariaDB poskytuje několik způsobů, jak vrátit datový typ sloupce. Zde jsou čtyři způsoby, jak získat datový typ daného sloupce v MariaDB.

Položka SHOW COLUMNS Prohlášení

SHOW COLUMNS zobrazí informace o sloupcích v dané tabulce nebo pohledu. Můžeme předat název tabulky nebo pohledu, abychom vrátili informace o jeho sloupcích:

SHOW COLUMNS FROM Products;

Výsledek:

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

V případě potřeby jej můžeme zúžit pouze na jeden sloupec:

SHOW COLUMNS FROM Products
WHERE Field = 'ProductName';

Výsledek:

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

Položka DESCRIBE / DESC Prohlášení

DESCRIBE příkaz je zkratka pro SHOW COLUMNS FROM syntaxe:

DESCRIBE Products;

Výsledek:

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

Stačí připojit název sloupce a zúžit jej na jeden sloupec:

DESCRIBE Products ProductName;

Výsledek:

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

Můžete také použít zástupné znaky:

DESCRIBE Products 'Product%';

Výsledek:

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

Můžete jej také zkrátit na DESC :

DESC Products ProductName;

Výsledek:

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

information_schema.columns Zobrazit

information_schema.columns zobrazení obsahuje informace o sloupcích:

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';

Výsledek:

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

V tomto případě jsem použil DATABASE() funkce vrátit název aktuální databáze. Alternativně můžete použít název konkrétní databáze.

mariadb-show Utility

mariadb-show nástroj zobrazuje strukturu databáze MariaDB (databáze, tabulky, sloupce a indexy).

Tento nástroj se spouští samostatně. Jinými slovy, nespouštějte to z MariaDB. Místo toho otevřete nové okno terminálu/příkazového řádku a spusťte jej odtud.

Příklad:

mariadb-show KrankyKranes Products ProductName

Výsledek:

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

V tomto příkladu KrankyKranes je název databáze Products je tabulka a ProductName je sloupec, který mě zajímá.

K tomuto nástroji lze také přistupovat pomocí mysqlshow místo mariadb-show . Nástroj přijímá několik možností. Další informace naleznete v dokumentaci MariaDB.


  1. Jak naprogramovat spouštěč MySQL pro vložení řádku do jiné tabulky?

  2. Jak rozdělit hodnoty jednoho sloupce na více hodnot sloupců?

  3. SQL:Najděte maximální záznam na skupinu

  4. Přidání sloupce jako cizího klíče způsobí, že sloupec ERROR odkazovaný v omezení cizího klíče neexistuje