前言:
工作中做数据同步的过程中,经常要获取表信息、表字段等元数据,做SQL解析,故整理一下常用的数据库获取元数据的SQL
这里的元数据指的是数据库内描述数据表和表字段信息的“身份证”
元数据结构定义:
元数据表结构定义TableMetadata
@Data
public class TableMetadata {
private String tableSchema;
private String tableName;
private String tableComment;
}
元数据字段结构定义ColumnMetadata
@Data
public class ColumnMetadata {
private String tableName;
private String columnName;
private String dataType;
private String columnComment;
}
获取元数据:
提示:第一条sql是获取表元数据,第二条是获取字段元数据
Mysql 获取元数据
SELECT
TABLE_NAME,
TABLE_COMMENT,
TABLE_SCHEMA
FROM
INFORMATION_SCHEMA.TABLES
WHERE
TABLE_SCHEMA = '%s'
SELECT
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
COLUMN_COMMENT
FROM
information_schema.COLUMNS
WHERE
TABLE_SCHEMA = '%s'
SqlServer 获取元数据
SELECT name AS SCHEMA_NAME
FROM sys.schemas
SELECT
CONVERT(nvarchar(50),ISNULL(S.[name], '')) as TABLE_SCHEMA