MySQL表结构信息查询
在写设计文档时,需要把MySQL中的表结构按要求导出。MySQL客户端默认的字段不满足需求时,可通过MySQL的information_schema.COLUMNS表,查询并按需求导出字段。
SELECT
INFORMATION_SCHEMA.TABLES.TABLE_COMMENT 数据库表名称,
INFORMATION_SCHEMA.TABLES.TABLE_NAME 数据库表,
COLUMN_NAME 字段名称,
COLUMN_TYPE 字段类型,
COLUMN_DEFAULT 默认值,
CHARACTER_MAXIMUM_LENGTH AS 最大长度,(
CASE
WHEN is_nullable = 'NO' THEN
'否' ELSE '是'
END
) AS 是否可空,(
CASE
WHEN column_key = 'PRI' THEN
'是' ELSE '否'
END
) AS 是否主键,
COLUMN_COMMENT 描述
FROM
INFORMATION_SCHEMA.
COLUMNS LEFT JOIN INFORMATION_SCHEMA.TABLES ON INFORMATION_SCHEMA.TABLES.TABLE_NAME = INFORMATION_SCHEMA.COLUMNS.TABLE_NAME
WHERE
INFORMATION_SCHEMA.COLUMNS.TABLE_SCHEMA = '数据库名称'
AND INFORMATION_SCHEMA.COLUMNS.TABLE_NAME IN (
'数据库表名称列表'
);
Oracle 数据库表结构查询
SELECT
a.column_name 字段名,
a.data_type 数据类型,
a.data_length 长度,
a.data_precision整数位,
a.data_scale 小数位,
a.nullable 允许空值,
a.data_default 缺省值,
b.comments 备注
FROM
user_tab_columns a,
user_col_comments b
WHERE
a.column_name = b.column_name
AND a.table_name = b.table_name
AND a.table_name = upper( '数据库表名称' );