oracle中,如何利用sql语句查询某个表的结构?

oracle中,如何利用sql语句查询某个表的结构?比如,已知某个表名是test,但不知道这张表有哪些字段,怎么查(不能用select*fromtest方式)?楼下的朋友... oracle中,如何利用sql语句查询某个表的结构?比如,已知某个表名是test,但不知道这张表有哪些字段,怎么查(不能用 select * from test方式)?
楼下的朋友,我试过 desc test,在命令行里是可以的,但我需要把表结构给一个rs,这样方便我使用.
展开
 我来答
huanglenzhi
推荐于2017-10-11 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517190
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部

  利用sql语句查询某个表的结构的方法:

  通过Oracle中的user_tab_cols, user_col_comments, user_constraints, user_cons_columns表联合查询。
  1、user_tab_cols用来获取对应用户表的列信息;
  2、user_col_comments用来获取对应用户表列的注释信息;
  3、user_constraints用来获取用户表的约束条件;
  4、user_cons_columns约束中用户可访问列。

示例代码:

select t.table_name,
       t.column_name,
       t.data_type,
       t.data_length,
       t.nullable,
       t.column_id,
       c.comments,
       (SELECT CASE
                 WHEN t.column_name = m.column_name THEN
                  1
                 ELSE
                  0
               END
          FROM DUAL) iskey
  FROM user_tab_cols t,
       user_col_comments c,
       (select m.column_name
          from user_constraints s, user_cons_columns m
         where lower(m.table_name) = 'qh_outstoresabinfo'
           and m.table_name = s.table_name
           and m.constraint_name = s.constraint_name
           and s.constraint_type = 'P') m
 WHERE lower(t.table_name) = 'qh_outstoresabinfo'
   and c.table_name = t.table_name
   and c.column_name = t.column_name
   and t.hidden_column = 'NO'
 order by t.column_id
闽珺钦白曼
2020-02-14 · TA获得超过3801个赞
知道小有建树答主
回答量:3048
采纳率:32%
帮助的人:366万
展开全部
oracle
下读取表/字段的备注信息
oracle
通过comment
on
table
/
comment
on
column
追加表/字段的备注。
create
table
"mr_dept"
(
"dept_id"
number
not
null
,
"parent_id"
number,
"dept_name"
char(20)
not
null
,
"status"
number
default
1
not
null
,
primary
key
("dept_id")
);
comment
on
table
"mr_dept"
is
'部门表';
comment
on
column
"mr_dept"."dept_id"
is
'部门编号';
comment
on
column
"mr_dept"."parent_id"
is
'上级部门编号';
comment
on
column
"mr_dept"."dept_name"
is
'部门名';
comment
on
column
"mr_dept"."status"
is
'状态';
备注加好以后,如何在查询中检索呢?
查询表的备注信息
select
table_name,
table_type,
comments
from
user_tab_comments
where
table_name
=
'mr_dept;
查询字段的备注信息
select
table_name,
column_name,
comments
from
user_col_comments
where
table_name
=
'mr_dept;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
景愉玉幼霜
2019-06-16 · TA获得超过3784个赞
知道大有可为答主
回答量:3163
采纳率:30%
帮助的人:172万
展开全部
  利用
sql语句
查询某个表的结构的方法:
  通过Oracle中的user_tab_cols,
user_col_comments,
user_constraints,
user_cons_columns表联合查询。
  1、user_tab_cols用来获取对应用户表的列信息;
  2、user_col_comments用来获取对应用户表列的注释信息;
  3、user_constraints用来获取用户表的约束条件;
  4、user_cons_columns约束中用户可访问列。
示例代码:
select t.table_name,
t.column_name,
t.data_type,
t.data_length,
t.nullable,
t.column_id,
c.comments,
(SELECT CASE
WHEN t.column_name = m.column_name THEN
1
ELSE
0
END
FROM DUAL) iskey
FROM user_tab_cols t,
user_col_comments c,
(select m.column_name
from user_constraints s, user_cons_columns m
where lower(m.table_name) = 'qh_outstoresabinfo'
and m.table_name = s.table_name
and m.constraint_name = s.constraint_name
and s.constraint_type = 'P') m
WHERE lower(t.table_name) = 'qh_outstoresabinfo'
and c.table_name = t.table_name
and c.column_name = t.column_name
and t.hidden_column = 'NO'
order by t.column_id
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuyu_woson
2006-11-20 · 超过22用户采纳过TA的回答
知道答主
回答量:44
采纳率:0%
帮助的人:68.1万
展开全部
rs不知是什么东西..
用sql语句行不行?
select COLUMN_NAME,DATA_TYPE from USER_TAB_COLS where TABLE_NAME='TEST';
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
寒食心思嫦娥470
2006-11-19 · TA获得超过599个赞
知道小有建树答主
回答量:437
采纳率:100%
帮助的人:416万
展开全部
desc test
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式