[20250731]建立完善descv.sql脚本.txt

[20250731]建立完善descv.sql脚本.txt

--//在sqlplus下使用desc 查询视图有一个缺点,如果字段太多,显示列表非常长,查找需要的信息非常浪费时间。
--//视乎没有一个表记录视图字段的相关信息。自己写一个脚本结合bash shell的grep命令显示相关视图字段的信息。

$ cat descv.sql
set term off
set linesize 80
spool tmpdesc.txt
desc &1
spool off
set term on
set linesize 280
host sed -n '1,2p' tmpdesc.txt ; egrep -i "&2" tmpdesc.txt
--host &_DELETE tmpdesc.txt

--//测试例子:

SCOTT@book01p> @ descv v$database supp|dbid
           Name                            Null?    Type
           ------------------------------- -------- ----------------------------
    1      DBID                                     NUMBER
   30      SUPPLEMENTAL_LOG_DATA_MIN                VARCHAR2(8)
   31      SUPPLEMENTAL_LOG_DATA_PK                 VARCHAR2(3)
   32      SUPPLEMENTAL_LOG_DATA_UI                 VARCHAR2(3)
   40      SUPPLEMENTAL_LOG_DATA_FK                 VARCHAR2(3)
   41      SUPPLEMENTAL_LOG_DATA_ALL                VARCHAR2(3)
   52      SUPPLEMENTAL_LOG_DATA_PL                 VARCHAR2(3)
   57      CON_DBID                                 NUMBER
   59      SUPPLEMENTAL_LOG_DATA_SR                 VARCHAR2(3)

--//如果@ descv v$database '' ,这样开头2行信息重复吧了。
--//对于表只要sqlplus的desc命令正常显示,也一样操作。例子:

SCOTT@book01p> @ descv emp date
           Name                            Null?    Type
           ------------------------------- -------- ----------------------------
    5      HIREDATE                                 DATE


posted @ 2025-07-31 20:59  lfree  阅读(19)  评论(1)    收藏  举报