oracle

oracle

PL/SQLでSLEEPさせたい

PL/SQLを使っているとたまにスリープさせたいシーンがあります。そんな時はDBMS_LOCK.SLEEPもしくはDBMS_SESSION.SLEEPプロシージャを使います。 18c以降はDBMS_SESSION.SLEEPを利用する 12...
データ・ディクショナリ

DBA_TAB_PRIVS ユーザに与えられているオブジェクト権限一覧

あるユーザおよびロールに付与されているオブジェクト権限一覧を確認する
oracle

Oracle SQL_FULLTEXT(CLOB)を分割しながらすべてを表示する

v$sqlやv$sqlareaからSQLを抽出する際VARCHAR2のサイズに納まらず、SQL_FULLTEXTを参照しないといけない場合、途中で分割しないと全てを表示する事できなくて不便ですよね。
oracle

Oracle LIKEで’_’アンダーバーを使う場合はエスケープが必要

Oracleのワイルドカードには『%(複数文字)』と『_(単一文字)』の2つがあります。これらを検索するにはエスケープ文字を使う必要があります。ワイルドカード『%』はメジャーですが、『_(アンダーバー)』は意外と知らない人多いみたいなのですね。
oracle

Oracle プラガブルDBでコンテナ確認

コンテナ一覧(SQLにてcdb_pdbsを参照する方法) col PDB_ID for 9 col PDB_NAME for a10 col STATUS for a10 select PDB_ID,PDB_NAME,STATUS from...
oracle

Oracle AUTOTRACEを利用する

AUTOTRACEはEXPLAIN PLANと異なり、実際にSQLを実行しシステムリソースの使用状況を取得しますので時間はかかりますが、性格なプランを確認する際はこちらを使用します。 12c以降のバージョンでは簡単に使えるようになっています...
oracle

Oracle ブロックサイズの確認

V$PARAMETER2を参照 する事で確認できます。ブロックサイズはDB作成時に決めたら変更する事はできません。
oracle

Oracle 仮想列の作成、削除、確認

仮想列とは既存カラムを使った計算式を新規カラムとして定義したものです。計算結果をDB内部で保持するため検索パフォーマンスを上げる一面もありますが注意点もあります。仮想列をインデックスに利用できますしヒストグラムの取得もできますが、仮想列に対...
oracle

表統計と列統計(ヒストグラム)の取得と削除確認

DBMS_STATS.GATHER_TABLE_STATSで表統計と列統計を取得する 手動で表統計情報の取得を行うにはDBMS_STATS.GATHER_TABLE_STATS(プロシージャ)を使います。こちら勘違いされがちなのですが列統計...
oracle

Oracle sysdba権限とシステム権限は似ていますが別ものです

Oracleには「システム権限」と「sysdba権限」があります。実はこれ似ていますが別ものです。システム権限一覧という表現があるように、システム権限にはいろいろな権限(alter system、create sequence、drop a...