Oracle查看表结构的几种方法(转后加工)
1、 DESCRIBE 命令
使用方法如下:
SQL> describe WX_ADVANCEUP
(WX_ADVANCEUP为表名)
显示的结果如下:
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
2、 DBMS_METADATA.GET_DDL包
使用方法如下:
SELECT DBMS_METADATA.GET_DDL('TABLE','WX_ADVANCEUP') FROM DUAL;
如果显示的结果并未完整,如下:

CREATE TABLE "SCOTT"."WX_ADVANCEUP"
( "NAME" NCHAR(6),
"ADDR" NVARCHAR2(16
那么修改如下:
SET LONG 9999
SELECT DBMS_METADATA.GET_DDL('TABLE','WX_ADVANCEUP') FROM DUAL;
则显示如下的结果:
DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST')
------------------------------------------------------------------------------
CREATE TABLE "SCOTT"."NCHAR_TST"
( "NAME" NCHAR(6),
"ADDR" NVARCHAR2(16),
"SAL" NUMBER(9,2)
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 LOGGING
STORAGE(INITIAL 12288 NEXT 12288 MINEXTENTS 1 MAXEXTENTS 249 PCTINCREASE 50
FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "SYSTEM"
3、 方法:
通过Oracle中的user_tab_cols, user_col_comments, user_constraints, user_cons_columns表联合查询。
user_tab_cols用来获取对应用户表的列信息;
user_col_comments用来获取对应用户表列的注释信息;
user_constraints用来获取用户表的约束条件;
user_cons_columns约束中用户可访问列。
select T.TABLE_NAME, T.COLUMN_NAME, T.DATA_TYPE,T.DATA_LENGTH,T.NULLABLE,T.COLUMN_ID from user_tab_columns t where table_name='WX_ADVANCEUP';

参考sql语句:
select t.table_name,t.column_name,t.data_type,t.data_length,t.nullable,t.column_id,c.comments,
(SELECT CASE WHEN t.column_name=m.column_name THEN 1 ELSE 0 END FROM DUAL) iskey
FROM user_tab_cols t, user_col_comments c, (select m.column_name from user_constraints s, user_cons_columns m
where lower(m.table_name)='us_cities' and m.table_name=s.table_name
and m.constraint_name=s.constraint_name and s.constraint_type='P') m
WHERE lower(t.table_name)='us_cities'
and c.table_name=t.table_name
and c.column_name=t.column_name
and t.hidden_column='NO'
order by t.column_id
Oracle查看表结构的几种方法(转后加工)的更多相关文章
- Oracle查看表结构的几种方法
1,DESCRIBE 命令 使用方法如下: SQL> describe nchar_tst(nchar_tst为表名) 显示的结果如下: 名称 ...
- Oracle查看表结构的方法【我】
Oracle查看表结构的方法 方法一: 在命令窗口下输入 DESC table_name; 回车 方法二: 在sql窗口下 SELECT DBMS_METADATA.GET_ ...
- ORACLE 查看表结构
select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select tabl ...
- Oracle查看表结构
目的:通过SQL进行查看表结构,因为使用PL/SQL连接工具,连接到公司的数据库上经常断开.故改为使用Navicat连接数据库,个人觉得这个查看表结构很困难. 查看表结构和约束精简 -- 查询指定表的 ...
- Oracle 数据库中查看表空间的2种方法
在Oracle数据库中查看表空间使用状况是我们在实际应用中经常涉及到的,以下的内容就就是对Oracle 数据库中查看表空间使用状况时所要用到的SQL的描述,希望你能从中获得自己想要的东西. Oracl ...
- mysql 从 frm 文件恢复 table 表结构的3种方法
mysql 正常运行的时候,查看 table 的结构并不是困难的事. 但是有时 mysql 发生故障,这种方法便不再可行. 当遇到故障,通常使用新的 mysql 实例来恢复当前的数据. 建表是非常重要 ...
- oracle增加表空间的四种方法
1. 查看所有表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_nam ...
- oracle增加表空间的四种方法,查询表空间使用情况
增加表空间大小的四种方法Meathod1:给表空间增加数据文件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADA ...
- mysql 复制表数据,表结构的3种方法
什么时候我们会用到复制表?例如:我现在对一张表进行操作,但是怕误删数据,所以在同一个数据库中建一个表结构一样,表数据也一样的表,以作备份.如果用mysqldump比较麻烦,备份.MYD,.MYI这样的 ...
随机推荐
- 自定义头文件 No such file or directory
my_file.h为你的头文件名 要用#include"my_file.h",而不能是#include<my_file.h>. 如果头文件名在尖括号<>里, ...
- cycleInterpolator 循环加速器
CycleInterpolator Repeats the animation for a specified number of cycles. The rate of change follows ...
- Oracle 表死锁 解决
问题:更新的Update语句一直在更新 卡在执行update语句的地方. 清除的方法: Oracle表死锁解除 我是在plsql中处理 1.先查询 select * from v$locked ...
- java 多线程——一个定时调度的例子
java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...
- matlab(函数,变量)
- [转]Perfmon - Windows 自带系统监测工具
以下内容转自:http://blog.csdn.net/oscar999/article/details/7918385 ---------------------------分割线--------- ...
- Octopus系列之HttpCustom2.0模板引擎的处理,一个bug的分析
实现的目标是: 1.实现手机和PC模板请求的区分:使得来自两种不同设备请求的时候,各自路由到不同的目录中去 2.保持只有一个引擎实例对象 最后发现一个bug就是,当我从PC访问时初始化了PC的目录,呈 ...
- Octopus系列之更新历史记录
更新笔记历史 2015.2.3 更新了产品价格的计算方法 --采用了通用化的一个处理[支持各个国家货币]更新产品价格,增加两组价格:一组用来进行前台的展示:一组用来进行后台的计算更新了产品分类 ...
- Java:一个简单的Java应用程序
/** * 这是文档注释 * @version * @author */ /* 这之间的内容也是注释 */ //这是行注释 public class FirstSample { public st ...
- mysql启动错误
1.启动时,显示ERROR tail localhost.localdomain.err 错误日志 2.新增目录,启动成功