MySQL和 Oracle查看表信息

在日常Mysql和Oracle数据库使用时,经常使用到查看表、索引等信息,记录下来,方便备查。

MySQL 主要是使用 information_schema 信息表;

Oracle 主要是使用 各种视图,如user_ind_columns。

一、查看所有表

MySQL查看表命令

sql 复制代码
// 查看所有表
show tables;

Oracle 查看表命令

sql 复制代码
// 查看所有表
SELECT table_name FROM user_tables;
// 查看所有表和表注释
SELECT table_name,comments FROM all_tab_comments;
二、查看索引信息

MySQL 查看表索引命令

sql 复制代码
// 查看索引
show INDEX from table_name;

Oracle 查看表索引命令

根据 dba_indexes 和 内置视图 user_ind_columns

sql 复制代码
// 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 查看主键信息

sql 复制代码
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 表约束视图

sql 复制代码
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 查看列信息

sql 复制代码
// 查询所有列信息
SELECT
	TABLE_NAME,
	COLUMN_NAME,
	DATA_TYPE,
	CHARACTER_MAXIMUM_LENGTH
FROM
	information_schema.`COLUMNS`;

Oracle 查看列信息

sql 复制代码
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
)
相关推荐
我会尽全力 乐观而坚强2 分钟前
MySQL零基础入门(二)
数据库·mysql·adb
kali-Myon1 小时前
某校园门禁系统高危 SQL 注入漏洞挖掘复盘
数据库·sql·安全·web安全
程序员在囧途2 小时前
likeadmin-api API 中转站怎么做统一报价?从 /pricing、/user/balance 到 task_id 回执的落地方法
运维·服务器·数据库·likeadmin-api·api中转站·token计费
龙石数据3 小时前
MySQL 全量同步到 Hive 怎么做?三步配置教程
数据库·hive·mysql·数据治理·数据中台
程序员在囧途4 小时前
likeadmin-api API 算力超市怎么做供应商切换?统一鉴权、task_id 和 callback_url 才能稳交付
java·服务器·数据库·开放api·likeadmin-api·api算力超市
数据工匠老o4 小时前
连接池配置实战——从“连不上“到“连太多“的完整排查指南
数据库
一只专注api接口开发的技术猿5 小时前
电商评论自动化监控与情感数据分析完整落地教程(附可直接运行 Python 代码)
大数据·数据库·python·数据分析·自动化
hh真是个慢性子5 小时前
GaussDB Inside 2.23.01.280 集中式一主一备安装
数据库·database·gaussdb·国产数据库·高斯
沉静的小伙5 小时前
Spring事务
java·数据库·spring
大侠锅锅5 小时前
第 3 篇:节点自动化纳管——从裸机到可管理的 7 步安装流水线
数据库·自动化·边缘计算·iot