MySQL和 Oracle查看表信息
2023-12-13 05:54:19
在日常Mysql和Oracle数据库使用时,经常使用到查看表、索引等信息,记录下来,方便备查。
MySQL 主要是使用 information_schema 信息表;
Oracle 主要是使用 各种视图,如user_ind_columns。
一、查看所有表
MySQL查看表命令
// 查看所有表
show tables;
Oracle 查看表命令
// 查看所有表
SELECT table_name FROM user_tables;
// 查看所有表和表注释
SELECT table_name,comments FROM all_tab_comments;
二、查看索引信息
MySQL 查看表索引命令
// 查看索引
show INDEX from table_name;
Oracle 查看表索引命令
根据 dba_indexes 和 内置视图 user_ind_columns
// dba_indexes 查看所有索引
SELECT
table_name,
index_type,
index_name
FROM
dba_indexes
WHERE
table_name IN (
SELECT
table_name
FROM
user_tables
);
// 内置视图user_ind_columns 查看索引
SELECT
*
FROM
user_ind_columns
WHERE
table_name IN (
SELECT
table_name
FROM
user_tables
);
三、查询主键信息
MySQL 查看主键信息
SELECT
kk.column_name,
kk.constraint_name,
kk.referenced_table_name,
kk.referenced_column_name
FROM
information_schema.table_constraints tt
JOIN information_schema.key_column_usage kk
ON tt.constraint_name = kk.constraint_name
WHERE
tt.constraint_type = 'PRIMARY KEY';
Oracle 查看主键信息
user_cons_columns 表约束视图
SELECT
cc.*
FROM
user_cons_columns cc,
user_constraints c
WHERE
cc.constraint_name = c.constraint_name
AND c.constraint_type = 'P'
AND cc.table_name IN (
SELECT
table_name
FROM
user_tables
);
四、查询列信息
MySQL 查看列信息
// 查询所有列信息
SELECT
TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH
FROM
information_schema.`COLUMNS`;
Oracle 查看列信息
SELECT
tt.*, cc.COMMENTS
FROM
user_tab_columns tt,
user_col_comments cc
WHERE
tt.table_name = cc.table_name
AND tt.column_name = cc.column_name
AND tt.table_name IN (
SELECT
table_name
FROM
user_tables
)
文章来源:https://blog.csdn.net/u012190388/article/details/134960424
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!