`
newlethe
  • 浏览: 81574 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Oracle数据库系统视图USER_TAB_COLS和USER_TAB_COLUMNS的区别

阅读更多
视图SYS.USER_TAB_COLS和SYS.USER_TAB_COLUMNS都保存了当前用户的表、视图和
Clusters中的列信息。通过检索这两个表,可以方便的获取到表的结构。

主要的列属性有:
   TABLE_NAME
      表、视图或Clusters名称
   COLUMN_NAME
      列名
   DATA_TYPE
      数据类型
   DATA_TYPE_MOD
      Datatype modifier of the column
   DATA_TYPE_OWNER
      Owner of the datatype of the column
   DATA_LENGTH
      长度
   DATA_PRECISION
      精度
   DATA_SCALE
      小数点后位数
   NULLABLE
      是否允许为空
   COLUMN_ID
      列ID
   DEFAULT_LENGTH
      默认值长度
   DATA_DEFAULT
      默认值
   CHAR_LENGTH
      列最大程度,用字符串表示

不同的是USER_TAB_COLS比USER_TAB_COLUMNS多几列:

HIDDEN_COLUMN VARCHAR2(3)
VIRTUAL_COLUMN VARCHAR2(3)
SEGMENT_COLUMN_ID NUMBER
INTERNAL_COLUMN_ID NOT NULL NUMBER
QUALIFIED_COL_NAME VARCHAR2(4000)

而且存储内容多了隐藏字段。这些隐藏字段是Oracle自动添加的,并且设置
HIDDEN_COLUMN和VIRTUAL_COLUMN都是YES。

看oracle的脚本可以发现视图USER_TAB_COLUMNS就是根据视图USER_TAB_COLS创建的:
create or replace view sys.user_tab_columns as
select TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_TYPE_MOD, DATA_TYPE_OWNER,
       DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE, COLUMN_ID,
       DEFAULT_LENGTH, DATA_DEFAULT, NUM_DISTINCT, LOW_VALUE, HIGH_VALUE,
       DENSITY, NUM_NULLS, NUM_BUCKETS, LAST_ANALYZED, SAMPLE_SIZE,
       CHARACTER_SET_NAME, CHAR_COL_DECL_LENGTH,
       GLOBAL_STATS, USER_STATS, AVG_COL_LEN, CHAR_LENGTH, CHAR_USED,
       V80_FMT_IMAGE, DATA_UPGRADED
from USER_TAB_COLS
where HIDDEN_COLUMN = 'NO'

因此使用时尽量使用USER_TAB_COLUMNS,以避免获取到oracle自行添加的隐藏字段。
 

分享到:
评论

相关推荐

    user_tab_columns 表相关及排序问题

    NULL 博文链接:https://xdw1626.iteye.com/blog/337477

    oracle 使用sql获取数据库表、表的字段的多种方法

    查询dba_tab_columns 代码如下: select COLUMN_NAME,DATA_TYPE,DATA_LENGTH from dba_tab_columns where table_name =upper(‘表名’) order by COLUMN_NAME –这种方法需要有DBA权限 –第二种方法: 查询user_...

    Sap b1 9.2存储过程

    IF EXISTS (SELECT 1 FROM OITM T0 WHERE T0.DfltWH IS NULL AND T0.ItemCode=@list_of_cols_val_tab_del) BEGIN SET @error=1 SET @error_message=N'管理提示1.1:物料主数据中"库存数据"页签中"默认仓库"必须...

    drop_mongo_cols.rar

    本工程为C++实现的,使用MongoDB的api批量删除mongo数据库中的cols的demo, 实现比较简单,供大家学习研究使用。如果有朋友需要批量删除MongoDB的数据,需对工程适当的加以修改。 工程很简单,一看便知。

    RRGRID

    GRID_GET_ROWS WM_GRID_USER_OUTER + 5 <br>//返回值不包括第0列 #define GM_GRID_GET_COLS WM_GRID_USER_OUTER + 6 <br>//GM_GRID_SET_CELL_COUNT (重置Grid行列数) //重置单元行列数,...

    LDPC编译码仿真,matlab2021a运行仿真

    s=round(rand(1, cols-rows)); %产生H矩阵 H=genH(rows,cols); %使用H矩阵进行LDPC编码 [u,P,rearranged_cols]=ldpc_encode(s,H); SNR=10; amp=1;%量化幅度 tx_waveform=bpsk(u,amp);%量化 rx_waveform=awgn(tx_...

    6、oracle数据库下查询操作

    ORACLE中之前说过有两个伪列ROWID和ROWNUM,用来标识唯一的一条记录。 1.基本查询 对数据查询最简单的也就是单表查询了,查询使用的语法是: SELECT [COLS] FROM [TABLE] [WHERE][CONDITION] 平常查询时,...

    xaringan_columns:用于将多列添加到 xaringan (.Rmd) 幻灯片的 JavaScript 宏

    为 Remark.js / xaringan 创建列 这个项目包含一个小的 JavaScript 宏,可以在 Markdown 中用于编写 Remark.js 或...要使用此宏,您需要将cols_macro.js和cols.css保存在项目的目录中。 然后,在YAML标头中引用这些文件

    俄罗斯方块

    var createCanvas = function(rows , cols , cellWidth, cellHeight) { tetris_canvas = document.createElement("canvas"); // 设置canvas组件的高度、宽度 tetris_canvas.width = cols * cellWidth; tetris_...

    PHP实例之新闻发布系统源码下载

    textarea name="textfield" cols="58" rows="6" class="field"></textarea> <td bgcolor="#FFFFFF"><input name="submit" type="submit" value="发布"></td> </form> <? include(...

    pandas 透视表中文字段排序方法

    先把dataframe中需要特殊排序的列中的汉字转换成数字,然后生成透视表,生成透视表之后,再把透视表的index或者columns中的数字替换成相应的汉字,透视表的结果就会按照你想要的顺序进行排序。 def get_special_...

    program_open_fortran读取csv_fortran读取CSV文件模块_fortran读csv_

    fortran读写CSV文件模块声明:type(csv_file)::f写文件 初始化 f%initialize() 打开文件 f%open...rows() 获取数据总列数 f%get_n_cols() 返回列类型 f%variable_types() 析构函数 f%destroy() 获取表头 f%get_header()

    php分页123456

    $identity=$_POST[user_number]; $phone=$_POST[user_tel]; $address=$_POST[address]; $carid=$_POST[car_number]; $cardescribe=$_POST[car_content]; $carluxian=$_POST[car_road]; car($username,$...

    原创Matlab通过ODBC的方式调用数据库-StrSpliteToCell.m

    原创Matlab通过ODBC的方式调用数据库-StrSpliteToCell.m 以下内容为Matlab中文论坛会员,Godman原创。 如果需要转载,请联系Godman会员: 如有疑问可以邮件联系 tntuyh@163.com Godman 2009.3.30 晚 Good ...

    原创Matlab通过ODBC的方式调用数据库-Txt2Access.m

    原创Matlab通过ODBC的方式调用数据库-Txt2Access.m 以下内容为Matlab中文论坛会员,Godman原创。 如果需要转载,请联系Godman会员: 如有疑问可以邮件联系 tntuyh@163.com Godman 2009.3.30 晚 Good Luck...

    DataPre.py

    cols = list(set(list(Tcols)) & (set(list(TeCols)))) objectLists = [] numberLists = [] RTraindata = self.train_datas[cols] RTestdata = self.test_datas[cols] self.train_datas = None self.train_...

    原创Matlab通过ODBC的方式调用数据库-CreateSchema.m

    原创Matlab通过ODBC的方式调用数据库-CreateSchema.m 以下内容为Matlab中文论坛会员,Godman原创。 如果需要转载,请联系Godman会员: 如有疑问可以邮件联系 tntuyh@163.com Godman 2009.3.30 晚 Good ...

    wordclock:DIY WordClock

    字时钟 基于字体和德语布局要求健康检查字时钟集合客制化 修改user_config.h以更改配置钥匙价值观评论GRID_ROWS 10 11 行数GRID_COLS 11 列数GRID_FIRST 0:左上1:右上2:左下角3:右下角第一个领导的位置GRID_...

    DataDemo:提供资料集与范例分享

    资料集与使用范例提供资料集与范例分享, 资料集来自于Open data或模拟资料.Part 1 资料Data (依英文字母排序)airline_int_cols.md资料说明: 单一大型航班资料下载档案: airline_int_cols.csv.bz2 (1.38GB)参考连结: ...

    基于php失物招领程序

    textarea name="post_adtop" cols="80" rows="4"><?=$ad_top?> </textarea> </ul></div> <li class="left"><b>底部广告:</b></li> <textarea name="post_adfoot" cols="80" rows="4...

Global site tag (gtag.js) - Google Analytics