檢視ORACLE 資料庫的表和列的相關資訊
本文全部轉載自:http://www.cnblogs.com/tearer/archive/2012/12/13/2815601.html
供自己收藏學習。
--------------------------------------------------------------------------------------------------------------------
-- 檢視ORACLE 資料庫中本使用者下的所有表
SELECT table_name FROM user_tables;
-- 檢視ORACLE 資料庫中所有使用者下的所有表
select user,table_name from all_tables;
-- 檢視ORACLE 資料庫中本使用者下的所有列
select table_name,column_name from user_tab_columns;
-- 檢視ORACLE 資料庫中本使用者下的所有列
select user,table_name,column_name from all_tab_columns;
-- 檢視ORACLE 資料庫中的序列號
select * from user_sequences;
-- 上面的所有物件,都可以通過下面的SQL語句查詢得到
--
SELECT * FROM user_objects;
-- 檢視ORACLE 資料庫中所有表的註釋
select table_name,comments from user_tab_comments;
-- 檢視ORACLE 資料庫中所有列的註釋
select table_name,column_name,comments from user_col_comments;
-- 給表加ORACLE的註釋
COMMENT ON TABLE aa10 IS '
-- 給列加ORACLE的註釋
COMMENT ON COLUMN aa10.aaa100 IS '引數類別';
-- 查看錶中列的屬性,包括 資料型別,是否非空等
DESC aa10;
-- 通過系統表,查看錶中列的屬性,包括 資料型別,是否非空等
SELECT table_name,COLUMN_ID,column_name,data_type,data_length,DATA_PRECISION,NULLABLE
FROM user_tab_columns
ORDER BY table_name,COLUMN_ID;
--檢視所有表空間
selecttablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name
--檢視未使用表空間大小
selecttablespace_name,sum(bytes)/1024/1024 from dba_free_space group bytablespace_name;
-- 檢視資料庫中表、索引佔用的資料庫空間大小
SELECT * FROM user_segments;
-- 檢視所有表的記錄數
CREATE TABLE table_count(table_name VARCHAR2(50),columns NUMBER(20));
-- 通過PB執行下面的語句,得到結果集,將結果集在PB下執行,最後提交
select 'insert into table_count values('''||table_name||''', (select count(1)from '||table_name||'));//'||comments from user_tab_comments;
-- 所有表的記錄都在table_count了
SELECT * FROM table_count;