使用场景
因为某种需求,想要获取到mysql中所有的数据类型
实现方案:
INFORMATION_SCHEMA是每个MySQL实例中的数据库,该实例存储有关MySQL服务器维护的所有其他数据库的信息。
1.获取所有数据类型
SELECT DATA_TYPE FROM information_schema.COLUMNS GROUP BY DATA_TYPE
DATA_TYPE |
---|
varchar |
int |
longtext |
bigint |
enum |
json |
text |
mediumtext |
timestamp |
datetime |
set |
binary |
char |
float |
varbinary |
tinyint |
decimal |
blob |
double |
mediumblob |
smallint |
time |
date |
tinytext |
longblob |
2.获取指定数据库中已使用的数据类型
select DATA_TYPE from information_schema.COLUMNS
where TABLE_SCHEMA='outsource' GROUP BY DATA_TYPE
DATA_TYPE |
---|
int |
varchar |
text |
datetime |
tinyint |
double |
smallint |
char |
date |
bigint |
decimal |
longtext |
mediumtext |
tinytext |
time |
3.获取指定数据库-指定表-指定字段的数据类型
select DATA_TYPE from information_schema.COLUMNS
where TABLE_SCHEMA='outsource'
and TABLE_NAME='aa'
and column_name = 'id'