如何使用sql语句,查询oracle的表注释等信息?

如何使用sql语句,查询oracle的表注释等信息?,第1张

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;

使用dba_tables,all_tables等都可以,如查找USERS表空间下的所有表:
select owner,table_name,tablespace_name from all_tables where tablespace_name='USERS'

方法和详细的 *** 作步骤如下:

1、第一步,通过pl
 / sql登录到oracle数据库,见下图,转到下面的步骤。

2、第二步,完成上述步骤后,输入sql以查询该库的所有视图,elect from all_views t,并要求所有者在结果中代表不同的用户,见下图,转到下面的步骤。

3、第三步,完成上述步骤后,如果查看用户的所有视图,执行sql,select from user_views t,可以看到用户尚未创建视图,见下图,转到下面的步骤。

4、第四步,完成上述步骤后,如果要查看库,则执行sql,代码见下图。这样,就解决了这个问题了。

没有索引是否有自增长的ID?如果没有ID也没有索引。那么尽量采用可转换为整形的字段作为关联或者作为查询条件。。注千:万不用要like来查或者关联。即使要加like。
一定要作为离where最远的字段
最近我也碰到个例子。数据库中。A表有200W条数据B表1800W条数据有索引的情况下。测试了下根据索引来查
在1800W条数据中。准确查询出20条数据(因为是作为分页的)
使用了1秒左右

在200W的数据表中查询某个字段(该字段为索引)
但是使用了
where
testing
like
'%test%'使用了前后模糊查询时间用了10秒以上。并且在分页函数月往后时间越慢
在200W条数据中查询某个字段(该字段为索引)使用了后模糊
where
testing
like
'test%'查询时间基本是在2到10秒左右
在200W的数据中(该字段非索引。nvarchar型的
但是该字段都是数字,都是可被转换为整形的)使用精确查询加模糊查询
where
testing2
=
test2
and
testing
like
'%test%'使用该方法查询时间基本是在1到5秒内浮动
(5秒是查最后一条数据时的情况)

但是当把where
testing
like
'%test%'
and
testing2
=
test2
换成这样以后查询时间和样例一是一样的。基本都在10秒以上。
所以你没有索引的情况下。建议尽量采用
=
号的条件靠前。like
条件要放后面即使有索引前%test%这种查询是要避免的貌似这种事会破坏索引的。还有where
1=1的情况貌似也是会破坏索引的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10408408.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-08
下一篇 2023-05-08

发表评论

登录后才能评论

评论列表(0条)

保存