当前位置: 首页 > news >正文

Oracle 查看表结构的方法(MySQL vs Oracle 查看表结构对比)

Oracle提供了多种查看表结构的方法:

1. 使用DESCRIBE命令快速查看列名和类型;

2. 查询USER_TAB_COLUMNS获取详细列信息;

3. 通过USER_COL_COMMENTS查看列注释;

4. 使用USER_CONSTRAINTS查询约束信息;

5. 调用DBMS_METADATA.GET_DDL获取完整建表语句。


相比MySQL的DESC命令,Oracle的数据字典视图提供了更全面的表结构信息,包括列属性、约束、注释等。


开发人员可根据需求选择不同方法,从简单查看列名到获取完整DDL语句。


Oracle 查看表结构的方法

Oracle 没有像 MySQL 的DESCSHOW COLUMNS那样简单的命令,但有多种方式可以查看表结构。


方法一:使用 DESCRIBE(最常用)

sql

DESC actor; -- 或 DESCRIBE actor;

输出示例:

text

Name Null? Type ------------ ----- ------------- ACTOR_ID NOT NULL NUMBER(5) FIRST_NAME NOT NULL VARCHAR2(45) LAST_NAME NOT NULL VARCHAR2(45) LAST_UPDATE NOT NULL DATE CREATE_DATE NOT NULL DATE

方法二:查询数据字典视图(最详细)

2.1 查看列信息

sql

-- 查看指定表的所有列 SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE, DATA_DEFAULT FROM USER_TAB_COLUMNS WHERE TABLE_NAME = 'ACTOR' ORDER BY COLUMN_ID;

2.2 查看详细列信息(含注释)

sql

SELECT a.COLUMN_NAME, a.DATA_TYPE, a.DATA_LENGTH, a.NULLABLE, b.COMMENTS FROM USER_TAB_COLUMNS a LEFT JOIN USER_COL_COMMENTS b ON a.TABLE_NAME = b.TABLE_NAME AND a.COLUMN_NAME = b.COLUMN_NAME WHERE a.TABLE_NAME = 'ACTOR' ORDER BY a.COLUMN_ID;

三、数据字典视图对比

视图作用说明
USER_TAB_COLUMNS当前用户拥有的表列信息最常用
ALL_TAB_COLUMNS当前用户可访问的所有表列权限范围更广
DBA_TAB_COLUMNS数据库所有表的列需要 DBA 权限
USER_COL_COMMENTS当前用户表的列注释查看 COMMENT
USER_CONSTRAINTS当前用户表的约束信息查看主键、外键等
USER_IND_COLUMNS当前用户表的索引列查看索引信息

四、综合查询示例

查看表完整结构(列+约束+注释)

sql

-- 列信息 + 注释 SELECT t.COLUMN_ID, t.COLUMN_NAME, t.DATA_TYPE, t.DATA_LENGTH AS "LENGTH", t.NULLABLE, c.COMMENTS FROM USER_TAB_COLUMNS t LEFT JOIN USER_COL_COMMENTS c ON t.TABLE_NAME = c.TABLE_NAME AND t.COLUMN_NAME = c.COLUMN_NAME WHERE t.TABLE_NAME = UPPER('actor') ORDER BY t.COLUMN_ID;

查看主键信息

sql

SELECT a.COLUMN_NAME, a.CONSTRAINT_NAME FROM USER_CONS_COLUMNS a JOIN USER_CONSTRAINTS b ON a.CONSTRAINT_NAME = b.CONSTRAINT_NAME WHERE b.TABLE_NAME = 'ACTOR' AND b.CONSTRAINT_TYPE = 'P';

五、MySQL vs Oracle 查看表结构对比

操作MySQLOracle
简单查看DESC actor;DESC actor;
查看列详情SHOW COLUMNS FROM actor;SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME='ACTOR';
查看建表语句SHOW CREATE TABLE actor;SELECT DBMS_METADATA.GET_DDL('TABLE','ACTOR') FROM DUAL;
查看注释SHOW FULL COLUMNS FROM actor;SELECT * FROM USER_COL_COMMENTS;
查看索引SHOW INDEX FROM actor;SELECT * FROM USER_IND_COLUMNS;
查看约束SHOW CREATE TABLESELECT * FROM USER_CONSTRAINTS;

六、获取建表语句(DDL)

sql

-- Oracle 特有方式 SELECT DBMS_METADATA.GET_DDL('TABLE', 'ACTOR') FROM DUAL; -- 如果表属于其他用户(如 SCOTT) SELECT DBMS_METADATA.GET_DDL('TABLE', 'ACTOR', 'SCOTT') FROM DUAL;

输出示例:

text

CREATE TABLE "SCOTT"."ACTOR" ( "ACTOR_ID" NUMBER(5) NOT NULL ENABLE, "FIRST_NAME" VARCHAR2(45) NOT NULL ENABLE, "LAST_NAME" VARCHAR2(45) NOT NULL ENABLE, "LAST_UPDATE" DATE NOT NULL ENABLE, "CREATE_DATE" DATE DEFAULT TO_DATE('2020-10-01','YYYY-MM-DD') NOT NULL ENABLE, PRIMARY KEY ("ACTOR_ID") ENABLE )

七、常用快捷命令总结

命令/查询用途
DESC 表名快速查看列名和类型
SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME='表名';查看列详细信息
SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME='表名';查看列注释
SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME='表名';查看约束
SELECT DBMS_METADATA.GET_DDL('TABLE','表名') FROM DUAL;获取完整建表语句
http://www.jsqmd.com/news/799762/

相关文章:

  • 案例分享④|一个“难搞”客户的意外转折:记一次利用免费工具化解ERP信任危机的实战复盘
  • 保姆级教程:在ROS Noetic下用RTAB-Map给Gazebo仿真机器人建图导航(附完整launch文件)
  • XT1712 PWM/PFM 控制 DC-DC 降压稳压器
  • 云原生架构:Istio服务网格实践
  • GitLab权限设置保姆级教程:从Guest到Owner,别让你的项目裸奔
  • 碳化硅功率模块XM3:电力电子领域的高效解决方案
  • Mixtral-8x7B模型在消费级GPU上推理:混合量化与动态专家卸载实战
  • 别只盯着ifconfig!用ip命令和tcpdump深度调试udhcpc的DHCP全过程(附排错脚本)
  • Upload-labs:部署靶场及Pass-01实战解析
  • BLIVA多模态大模型:专攻图文混合理解,从原理到部署实战
  • 向上取整的原理
  • 如何快速修复Pix2Text ONNX模型文件缺失问题:终极实战指南
  • WIN10下MySQL 8.x配置避坑指南:从my.ini优化到sql_mode精准调校
  • 别再死记硬背截止、放大、饱和了!用Arduino+面包板,5分钟直观理解NPN/PNP三极管三种状态
  • ARM异常处理机制与链式管理实践
  • 英雄联盟玩家如何通过自动化工具提升游戏体验:League Akari实战指南
  • Navicat vs DBeaver 连接Oracle 19c:手把手教你搞定远程连接与本地配置(附常见错误排查)
  • 2026届最火的十大AI辅助写作平台解析与推荐
  • 告别乱码与黑屏:FBTFT驱动ST7789屏幕的常见问题排查与修复实录
  • 5分钟掌握layerdivider:AI智能图像分层工具终极指南
  • 别再为蜗壳网格发愁了!手把手教你用ICEM搞定离心泵CFD前处理(附几何修复技巧)
  • Spring Boot 2026教育技术演示项目全栈架构与工程实践解析
  • Midjourney Coca-Cola印相合规性落地手册(含商标使用红线、版权规避清单与平台审核白皮书)
  • 量子模拟新突破:Dicke态方法高效处理集体中微子振荡
  • ANSI转义序列封装:cursor-reset库实现终端光标精准控制
  • 有桥BOOST PFC变换器原理、工作模式和控制模式的优缺点
  • 【每日一题】位运算
  • SAP物料主数据同步PO系统:从IDOC增强到通信配置的保姆级避坑指南
  • 轻量级AI助手miniclawd:本地化、可扩展的TypeScript智能代理实践
  • 京东订单数据本地化备份指南:用开源工具WebCrawl搭建你的个人消费数据库