[sql] 오라클의 모든 테이블 목록 가져 오기?



8 Answers

user_tablesdba_tables 쿼리하지 못했습니다.
이 한 :

select table_name from all_tables  
Question

오라클 데이터베이스에 쿼리하여 모든 테이블의 이름을 표시하려면 어떻게합니까?




다음 쿼리는 필요한 데이터 만 나열하는 반면 다른 대답은 나와 혼동하는 추가 데이터를 제공합니다.

select table_name from user_tables;



아래 쿼리에서 열 세부 정보를 포함한 모든 테이블을 가져올 수 있습니다.

SELECT * FROM user_tab_columns;






sqlplus 좋게하기

sqlplus 를 사용하는 경우 열이 흩어지면 우선 몇 가지 매개 변수를 설정하여보다 나은보기를 만들 수 있습니다 (이러한 변수는 sqlplus 세션을 종료 한 후에도 유지되지 않아야 함).

set colsep '|'
set linesize 167
set pagesize 30
set pagesize 1000

모든 테이블 표시

다음과 같이 모든 테이블 이름을 볼 수 있습니다.

SELECT table_name, owner, tablespace_name FROM all_tables;

자신 만의 테이블보기

@Justin Cave가 언급했듯이 이것을 사용하여 자신이 소유 한 테이블 만 표시 할 수 있습니다.

SELECT table_name FROM user_tables;

조회수를 잊지 마라.

일부 '테이블'은 실제로 '보기'일 수 있으므로 다음과 같이 실행 해 볼 수도 있습니다.

SELECT view_name FROM all_views;

결과

이렇게하면 다음과 같이 공정하게 받아 들여질 수있는 무언가를 얻을 수 있습니다.




    select object_name from user_objects where object_type='TABLE';

----------------또는------------------

    select * from tab;

----------------또는------------------

    select table_name from user_tables;






select * from dba_tables

로그인 한 사용자에게 sysdba 권한이있는 경우에만 모든 사용자의 모든 테이블을 제공합니다.




Oracle Data Dictionary 를 사용하여 oracle 객체에 대한 정보를 얻을 수 있습니다.

다양한 방법으로 테이블 목록을 얻을 수 있습니다.

select * 
from dba_tables

또는 예를 들면 :

select * 
from dba_objects 
where object_type = 'TABLE' 

그런 다음 테이블 이름을 사용하여 테이블 열을 가져올 수 있습니다.

select * 
from dba_tab_columns

그런 다음 의존성 목록 (트리거, 뷰 등)을 얻을 수 있습니다.

select * 
from dba_dependencies
where referenced_type='TABLE' and referenced_name=:t_name 

그런 다음이 객체의 텍스트 소스를 가져올 수 있습니다.

select * from dba_source

원하는 경우 DBA 대신 USER 또는 ALL 보기를 사용할 수 있습니다.




Related



Tags

sql sql   oracle