使用场景

  因为某种需求,想要获取到mysql中所有的数据类型

实现方案:

  • 使用INFORMATION_SCHEMA,

  INFORMATION_SCHEMA是每个MySQL实例中的数据库,该实例存储有关MySQL服务器维护的所有其他数据库的信息。

1.获取所有数据类型
  • 查询sql
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.获取指定数据库中已使用的数据类型
  • 查询sql
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.获取指定数据库-指定表-指定字段的数据类型
  • 查询sql
select DATA_TYPE from information_schema.COLUMNS 
where TABLE_SCHEMA='outsource' 
and TABLE_NAME='aa' 
and column_name = 'id'
  • 执行结果
DATA_TYPE
int
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐