Mysql
 sql >> база данни >  >> RDS >> Mysql

4 начина за проверка на типа данни на колона в MySQL

Ето четири начина да получите типа данни на колона в MySQL.

SHOW COLUMNS Изявление

SHOW COLUMNS операторът показва информация за колоните в дадена таблица или изглед. Можем да предадем името на таблицата или изгледа, за да върнем информация за нейните колони:

SHOW COLUMNS FROM Pets;

Резултат:

+-----------+-------------+------+-----+---------+-------+
| Field     | Type        | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| PetId     | int         | NO   | PRI | NULL    |       |
| PetTypeId | int         | NO   |     | NULL    |       |
| OwnerId   | int         | NO   |     | NULL    |       |
| PetName   | varchar(60) | NO   |     | NULL    |       |
| DOB       | date        | YES  |     | NULL    |       |
+-----------+-------------+------+-----+---------+-------+

Можем да го ограничим само до една колона, ако е необходимо:

SHOW COLUMNS FROM Pets
WHERE Field = 'PetName';

Резултат:

+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| PetName | varchar(60) | NO   |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+

DESCRIBE / DESC Изявление

DESCRIBE оператор е пряк път за SHOW COLUMNS FROM синтаксис:

DESCRIBE Pets;

Резултат:

+-----------+-------------+------+-----+---------+-------+
| Field     | Type        | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| PetId     | int         | NO   | PRI | NULL    |       |
| PetTypeId | int         | NO   |     | NULL    |       |
| OwnerId   | int         | NO   |     | NULL    |       |
| PetName   | varchar(60) | NO   |     | NULL    |       |
| DOB       | date        | YES  |     | NULL    |       |
+-----------+-------------+------+-----+---------+-------+

Просто добавете името на колоната, за да я стесните до една колона:

DESCRIBE Pets PetName;

Резултат:

+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| PetName | varchar(60) | NO   |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+

Можете също да използвате заместващи знаци:

DESCRIBE Pets 'Pet%';

Резултат:

+-----------+-------------+------+-----+---------+-------+
| Field     | Type        | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| PetId     | int         | NO   | PRI | NULL    |       |
| PetTypeId | int         | NO   |     | NULL    |       |
| PetName   | varchar(60) | NO   |     | NULL    |       |
+-----------+-------------+------+-----+---------+-------+

Можете също да го съкратите до DESC :

DESC Pets PetName;

Резултат:

+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| PetName | varchar(60) | 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 = 'Pets' 
AND COLUMN_NAME = 'PetName';

Резултат:

+-------------+-----------+------------+--------------+
| COLUMN_NAME | DATA_TYPE | MAX_LENGTH | OCTET_LENGTH |
+-------------+-----------+------------+--------------+
| PetName     | varchar   |         60 |          240 |
+-------------+-----------+------------+--------------+

В този случай използвах DATABASE() функция за връщане на името на текущата база данни. Като алтернатива можете да използвате името на конкретна база данни.

mysqlshow Помощна програма

mysqlshow помощната програма показва структурата на MySQL база данни (бази данни, таблици, колони и индекси).

Тази помощна програма се изпълнява самостоятелно. С други думи, не стартирайте това от MySQL. Вместо това отворете нов прозорец на терминал/команден ред и го стартирайте от там.

Пример:

mysqlshow -u root PetHotel Pets PetName

Резултат:

+---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
| Field   | Type        | Collation          | Null | Key | Default | Extra | Privileges                      | Comment |
+---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
| PetName | varchar(60) | utf8mb4_0900_ai_ci | NO   |     |         |       | select,insert,update,references |         |
+---------+-------------+--------------------+------+-----+---------+-------+---------------------------------+---------+

В този пример PetHotel е името на базата данни, Pets е таблицата и PetName е колоната, която ме интересува.

Предоставих и потребителското име, с което да се свържа. Помощната програма приема доста опции. Вижте документацията на MySQL за повече информация.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL:Повторете ред с резултати няколко пъти и номерирайте редовете

  2. Условие WHERE в MySQL с 16 различни примера за заявка

  3. Как да съхранявате JSON данни в MySQL

  4. Как работи функцията RTRIM() в MySQL

  5. PHP MySQL Google Chart JSON - пълен пример