1,DESCRIBE 命令

使用方法如下:

SQL> describe nchar_tst(nchar_tst为表名)

显示的结果如下:

 名称                                      是否为空? 类型

 ----------------------------------------- -------- ----------------------------

 NAME                                               NCHAR(6)

 ADDR                                               NVARCHAR2(16)

 SAL                                                NUMBER(9,2)

2,DBMS_METADATA.GET_DDL包

使用方法如下:

  1. SQL> SELECT DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST') FROM DUAL;

如果显示的结果并未完整,如下:

  CREATE TABLE "SCOTT"."NCHAR_TST"

   (    "NAME" NCHAR(6),

        "ADDR" NVARCHAR2(16

那么修改如下:

  1. SQL> SET LONG 9999
  2. SQL> SELECT DBMS_METADATA.GET_DDL('TABLE','NCHAR_TST') 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约束中用户可访问列。





示例代码:

    1. select t.table_name,t.column_name,t.data_type,t.data_length,t.nullable,t.column_id,c.comments,
    2. (SELECT CASE WHEN t.column_name=m.column_name THEN 1 ELSE 0 END FROM DUAL) iskey
    3. FROM user_tab_cols t, user_col_comments c, (select m.column_name from user_constraints s, user_cons_columns m
    4. where lower(m.table_name)='us_cities' and m.table_name=s.table_name
    5. and m.constraint_name=s.constraint_name and s.constraint_type='P') m
    6. WHERE lower(t.table_name)='us_cities'
    7. and c.table_name=t.table_name
    8. and c.column_name=t.column_name
    9. and t.hidden_column='NO'
    10. order by t.column_id

Oracle查看表结构的几种方法的更多相关文章

  1. Oracle查看表结构的几种方法(转后加工)

    1. DESCRIBE 命令使用方法如下:SQL> describe WX_ADVANCEUP (WX_ADVANCEUP为表名)显示的结果如下: 名称                     ...

  2. Oracle查看表结构的方法【我】

    Oracle查看表结构的方法   方法一: 在命令窗口下输入   DESC table_name;  回车       方法二: 在sql窗口下   SELECT DBMS_METADATA.GET_ ...

  3. ORACLE 查看表结构

    select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select tabl ...

  4. Oracle查看表结构

    目的:通过SQL进行查看表结构,因为使用PL/SQL连接工具,连接到公司的数据库上经常断开.故改为使用Navicat连接数据库,个人觉得这个查看表结构很困难. 查看表结构和约束精简 -- 查询指定表的 ...

  5. Oracle 数据库中查看表空间的2种方法

    在Oracle数据库中查看表空间使用状况是我们在实际应用中经常涉及到的,以下的内容就就是对Oracle 数据库中查看表空间使用状况时所要用到的SQL的描述,希望你能从中获得自己想要的东西. Oracl ...

  6. mysql 从 frm 文件恢复 table 表结构的3种方法

    mysql 正常运行的时候,查看 table 的结构并不是困难的事. 但是有时 mysql 发生故障,这种方法便不再可行. 当遇到故障,通常使用新的 mysql 实例来恢复当前的数据. 建表是非常重要 ...

  7. oracle增加表空间的四种方法

    1. 查看所有表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_nam ...

  8. oracle增加表空间的四种方法,查询表空间使用情况

    增加表空间大小的四种方法Meathod1:给表空间增加数据文件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADA ...

  9. mysql 复制表数据,表结构的3种方法

    什么时候我们会用到复制表?例如:我现在对一张表进行操作,但是怕误删数据,所以在同一个数据库中建一个表结构一样,表数据也一样的表,以作备份.如果用mysqldump比较麻烦,备份.MYD,.MYI这样的 ...

随机推荐

  1. java 四舍五入 保留俩位小数

    public static void main(String[] args) {              String str="0";              BigDeci ...

  2. ISO C90 forbids mixed declarations and code 警告

    编译的时候经常会遇到   ISO C90 forbids mixed declarations and code 警告百度了一下,知道是如下原因 : 变量定义之前任何一条非变量定义的语句(注意:语句是 ...

  3. TestNG测试框架在基于Selenium进行的web自动化测试中的应用

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的 ...

  4. 用C#钩子写一个改键外挂

    我的微信群——软件开发测试工程师交流群,欢迎扫码: 改键是一种习惯,比如在玩儿lol或者dota的时候.理论上玩儿什么游戏都可以改键. 做一个窗体(点击Install——应用改键,点击Uninstal ...

  5. Android Https

    /** * HttpUrlConnection支持所有Https免验证,不建议使用 * * @throws KeyManagementException * @throws NoSuchAlgorit ...

  6. wpfのuri(让你完全明白wpf的图片加载方式以及URI写法)

    绝对 pack WPF URI pack://application:,,,/是协议:“,,,”是“///”的变体 1.资源文件 — 本地程序集 Uri uri = new Uri("pac ...

  7. jquery.util.easyui.dialog

    (function ($) { var $parent = parent.$; //获取弹出窗口数据集合 function getDialogs() { var dialogs = $parent(& ...

  8. IIS WebForm开发基础

    Winform是在客户电脑操作的. WebForm是客户机通过一个IP地址,到IIs服务器,再进行信息反馈,在非客户机上操作的. 一.WebForm 运行流程(1)需要访问数据库(aspx) 客户机打 ...

  9. podupdate时没有进度

    pod无法下载,解决方法. pod install --verbose --no-repo-update 原有命令被墙了. pod install --verbose --no-repo-update ...

  10. ContentProvider官方教程(3)ContentResolver查询、遍历 示例

    Retrieving Data from the Provider This section describes how to retrieve data from a provider, using ...