Oracle怎样查询表?

旅游 3年前 阅读:24 评论:0

  需要导出某用户下的所有table、view、sequence、trigger等信息,下面的SQL能够将那些信息select出来:

select * from user_tables;

select * from user_views;

select * from user_sequences;

select * from user_triggers;

想查找表的数据条数

尝尝那个

select t。

  table_name,t。num_rows from user_tables t

若是没有值,那就创建个函数

代码

create or replace function count_rows(table_name in varchar2,

owner in varchar2 default null)

return number

authid current_user

IS

num_rows number;

stmt varchar2(2000);

begin

if owner is null then

stmt := 'select count(*) from "'||table_name||'"';

else

stmt := 'select count(*) from "'||owner||'"。

  "'||table_name||'"';

end if;

execute immediate stmt into num_rows;

return num_rows;

end

再施行查询

select table_name, count_rows(table_name) nrows from user_tables。

版权声明

本文仅代表作者观点,不代表木答案立场。

网友评论