當前位置:編程學習大全網 - 編程語言 - 如何有效使用oracle的數據字典

如何有效使用oracle的數據字典

ORACLE的數據字典是數據庫的重要組成部分之壹。它隨著數據庫的出現而產生,隨著數據庫的變化而變化,具體體現在sys用戶下的壹些表和視圖中。數據字典名稱是大寫的英文字符。數據字典包含用戶信息、用戶權限信息、所有數據對象信息、表約束和統計分析數據。

ORACLE的數據字典是數據庫的重要組成部分之壹。它隨著數據庫的出現而產生,隨著數據庫的變化而變化,具體體現在sys用戶下的壹些表和視圖中。數據字典名稱是大寫的英文字符。

數據字典包含用戶信息、用戶權限信息、所有數據對象信息、表約束、統計分析數據庫視圖等。我們不能手動修改數據字典中的信息。很多時候,普通的ORACLE用戶不知道如何有效地使用它。

所有數據字典表的名稱和解釋,它有壹個同義詞dict。

所有數據字典表中的Dict_column字段名稱和解釋

如果我們想查詢與索引相關的數據字典,我們可以使用下面的SQL語句:

SQL & gtselect * from dictionary where instr(comments,' index ')& gt;0;

如果我們想知道user_indexes表中每個字段名的詳細含義,我們可以使用以下SQL語句:

SQL & gtselect列名,來自字典列的註釋,其中

表名= '用戶索引';

以此類推,不用看ORACLE的其他文檔,就可以很容易知道數據字典的詳細名稱和解釋。

下面按類別列出了ORACLE用戶常用的壹些數據字典的查詢使用方法。

首先,用戶

查看當前用戶的默認表空間。

SQL & gt從用戶選擇用戶名,默認表空間。

查看當前用戶的角色。

SQL & gtselect * from user _ role _ privs

查看當前用戶的系統權限和表級權限。

SQL & gtselect * from user _ sys _ privs

SQL & gtselect * from user _ tab _ privs

第二,表

查看用戶下的所有表。

SQL & gtselect * from user _ tables

查看名稱包含日誌字符的表。

SQL & gtselect object_name,object _ id from user _ objects where instr(object _ name,' LOG ')& gt;0;

查看表的創建時間。

SQL & gt選擇對象名稱,從用戶對象創建,其中對象名稱=上限

(’& amp;table _ name’);

查看表格的大小

SQL & gt從user_segments中選擇sum(bytes)/(1024 * 1024)作為“大小(M)”,其中

segment _ name = upper(& amp;table _ name’);

查看ORACLE內存區域中的表。

SQL & gtselect table_name,cache from user _ tables where instr(cache,' Y ')& gt;0;

三。索引

查看索引號和類別

SQL & gtselect index_name,index_type,table _ name from user _ indexes order by table _ name。

查看索引的索引字段。

SQL & gtselect * from user_ind_columns其中index _ name = upper(& amp;index _ name’);

查看索引的大小

SQL & gt從user_segments中選擇sum(bytes)/(1024 * 1024)作為“大小(M)”,其中

segment _ name = upper(& amp;index _ name’);

第四,序號

看序列號,last_number是當前值

SQL & gtselect * from user _ sequences

動詞 (verb的縮寫)視圖

視圖視圖的名稱。

SQL & gt從用戶視圖中選擇視圖名稱;

查看創建該視圖的select語句。

SQL & gt從用戶視圖中選擇視圖名稱、文本長度。

SQL & gt設置長2000;描述:可以根據視圖的text_length值設置set long的大小。

SQL & gt從user_views中選擇文本,其中view _ name = upper(& amp;view _ name ');

六,同義詞

查看同義詞的名稱

SQL & gtselect * from user _ synonyms

七。限制

查看表的約束

SQL & gtselect約束名稱,約束類型,搜索條件,約束名稱from

user_constraints,其中table _ name = upper(& amp;table _ name’);

SQL & gt選擇約束條件名稱,約束條件類型,約束條件列名稱

從用戶約束c,用戶約束列cc

其中c . owner = upper(& amp;table_owner ')和c . table _ name = upper(& amp;table _ name’)

以及c.owner = cc.owner和c . constraint _ name = cc . constraint _ name

按cc.position排序;

八、存儲函數和過程

查看功能和程序的狀態

SQL & gtselect object_name,status from user _ objects where object _ type = ' FUNCTION ';

SQL & gtselect object_name,status from user _ objects where object _ type = ' PROCEDURE ';

查看函數和過程的源代碼

SQL & gtselect text from all_source,其中owner=user,name = upper(& amp;plsql _ name ');

九,觸發

視圖觸發器

設置長50000;

關閉航向;

設置pagesize 2000

挑選

創建或替換觸發器“' ||”

trigger _ name | | ' " ' | | chr(10)| |

decode( substr( trigger_type,1,1),

' a ','後',' B ','前',' I ','代替')||

chr(10) ||

觸發事件|| chr(10) ||

在“' || table_owner || '”上。"' ||

table _ name | | ' " ' | | chr(10)| |

decode( instr( trigger_type,'每行' ),0,null,

對於每壹行')|| chr(10),

觸發器_主體

來自user _ triggers

  • 上一篇:關於IT業界的大蝦進來看看
  • 下一篇:水稻機器人編程
  • copyright 2024編程學習大全網