更新时间:2024-10-10 GMT+08:00

DBA_TAB_COLUMNS

DBA_TAB_COLUMNS视图存储关于表和视图的字段的信息。数据库里每个表的每个字段都在DBA_TAB_COLUMNS里有一行。需要有系统管理员权限才可以访问。

名称

类型

描述

owner

character varying(64)

表或视图的所有者。

table_name

character varying(64)

表名或视图名。

column_name

character varying(64)

列名。

data_type

character varying(128)

列的数据类型。

column_id

integer

创建表或视图时列的序号。

data_length

integer

列的字节长度。

comments

text

注释。

avg_col_len

numeric

列的平均长度,单位为字节。

nullable

bpchar

该列是否允许为空,对于主键约束和非空约束,该值为n。

data_precision

integer

数据类型的精度,对于numeric数据类型有效,其他类型为NULL。

data_scale

integer

小数点右边的位数,对于numeric数据类型有效,其他类型为0。

char_length

numeric

列的长度,单位为字符。只对varchar,nvarchar2, bpchar,char类型有效。

schema

character varying(64)

包含该表或视图的命名空间。

kind

text

当前记录所属的种类,如果此列属于表,则此字段显示为table;如果此列属于视图,则此字段显示为view。

应用示例

查询指定schema下的所有表字段信息:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
SELECt * FROM DBA_TAB_COLUMNS WHERE schema = 'public';
  owner  | table_name | column_name | data_type | column_id | data_length | comments | avg_col_len | nullable | data_precision | data_scale | char_length | schema | kind
---------+------------+-------------+-----------+-----------+-------------+----------+-------------+----------+----------------+------------+-------------+--------+-------
 dbadmin | t_customer | id          | int4      |         1 |           4 | 主键     |             | n        |                |          0 |           0 | public | table
 dbadmin | student    | sschool     | varchar   |         4 |          10 |          |             | n        |                |          0 |          10 | public | table
 dbadmin | student    | sgender        | varchar   |         3 |          10 |          |             | n        |                |          0 |          10 | public | table
 dbadmin | student    | sname       | varchar   |         2 |          10 |          |             | n        |                |          0 |          10 | public | table
 dbadmin | student    | sid         | varchar   |         1 |          10 |          |             | n        |                |          0 |          10 | public | table
 dbadmin | t_customer | email       | varchar   |         4 |          32 | email    |             | n        |                |          0 |          32 | public | table
 dbadmin | t_customer | gender      | varchar   |         3 |          10 | 性别     |             | n        |                |          0 |          10 | public | table
 dbadmin | t_customer | cust_name   | varchar   |         2 |          32 | 名字     |             | n        |                |          0 |          32 | public | table
(8 rows)