查询Oracle数据库的表和字段类型和长度等信息

// 通过user_tab_columns & user_col_comments 查询所有表和列等属性

SELECT * 
FROM user_tab_columns a, user_col_comments b
 WHERE a.TABLE_NAME = 'TEST02'
   AND b.table_name = 'TEST02';

所有属性如下:

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,HISTOGRAM,TABLE_NAME_1,COLUMN_NAME_1,COMMENTS

 

// 通过user_tab_columns & user_col_comments 查询字段的类型和长度信息

SELECT a.TABLE_NAME, b.COLUMN_NAME, a.DATA_TYPE, a.CHAR_USED, a.DATA_LENGTH, a.CHAR_LENGTH
FROM user_tab_columns a, user_col_comments b
 WHERE a.TABLE_NAME = 'TEST02' 
 AND b.table_name = 'TEST02';

 

属性说明:

完整的属性说明参考官方文档:https://docs.oracle.com/cd/B19306_01/server.102/b14237/statviews_2094.htm

TABLE_NAMEName of the table, view, or cluster
COLUMN_NAMEColumn name
DATA_TYPEDatatype of the column
CHAR_USEDB | CB indicates that the column uses BYTElength semantics. C indicates that the column uses CHAR length semantics. NULL indicates the datatype is not any of the following:
  • CHAR

  • VARCHAR2

  • NCHAR

  • NVARCHAR2

DATA_LENGTHength of the column (in bytes)
CHAR_LENGTHDisplays the length of the column in characters. This value only applies to the following datatypes:
  • CHAR

  • VARCHAR2

  • NCHAR

  • NVARCHAR

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sunny05296

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值