Oracle

Oracle

【Oracle】ORA-04091: 表は変化しています(ミューテーティングテーブル)の原因と解決方法完全ガイド

OracleのORA-04091(table is mutating, trigger/function may not see it)エラーの原因と解決方法を完全解説。行トリガーでのSELECTが原因の基本パターン、コンパウンドトリガー(11g+)による解決、パッケージ変数を使った従来の回避策、STATEMENT レベルトリガーへの切り替え、PRAGMA AUTONOMOUS_TRANSACTIONの是非まで網羅します。
Oracle

【Oracle】ORA-00001: 一意制約に反しています の原因と解決方法完全ガイド|重複データの特定・MERGE・UPSERT・LOG ERRORSまで解説

OracleのORA-00001(一意制約に反しています / unique constraint violated)エラーの原因と解決方法を完全解説。違反した制約と重複データの特定方法、MERGE文によるUPSERT、IGNORE_ROW_ON_DUPKEY_INDEXヒント、LOG ERRORSによるエラー行退避、PL/SQLでのDUP_VAL_ON_INDEX例外処理、シーケンスの欠番対策まで網羅します。
Oracle

【Oracle】ORA-01722: 数値が無効です の原因と解決方法完全ガイド|暗黙変換・WHERE句・INSERT・JOINまで解説

OracleのORA-01722(数値が無効です / invalid number)エラーの原因と解決方法を完全解説。VARCHAR2列とNUMBER列の暗黙変換、WHERE句での数値比較、INSERT時の型不一致、JOINの結合条件、TO_NUMBERの失敗、問題行の特定方法、VALIDATE_CONVERSIONによる事前チェックまで網羅します。
Oracle

【Oracle】デッドロック(ORA-00060)の原因と解決方法完全ガイド|検出・調査・予防策まで解説

OracleのデッドロックエラーORA-00060の原因・発生メカニズム・調査方法・解決策を完全解説。トレースファイルの読み方、V$LOCKとV$SESSIONでのロック調査SQL、行ロック/ITLデッドロックの違い、デッドロックを防ぐテーブル更新順序のルール化、SELECT FOR UPDATEとNOWAIT/SKIP LOCKEDの使い分けまで網羅します。
Oracle

【Oracle】外部表(External Table)の使い方完全ガイド|CSVファイルをSQLで直接読み込む方法・ORACLE_LOADER・エラー処理

Oracleの外部表(External Table)でCSV・TSVファイルをSQLで直接参照する方法を完全解説。ディレクトリオブジェクトの作成、ORACLE_LOADERドライバの設定、列の型変換、BAD/LOGファイルによるエラー処理、ORACLE_DATAPUMPドライバ、INSERT INTO ... SELECTでの本テーブルへの取り込み、PARALLELによる高速化まで網羅します。
Oracle

【Oracle】パーティションテーブルの作成・管理完全ガイド|RANGE・LIST・HASH・INTERVAL・分割と結合まで解説

Oracleのパーティションテーブルを完全解説。RANGEパーティション(日付・数値範囲)、LISTパーティション(値リスト)、HASHパーティション(均等分散)、INTERVALパーティション(自動作成)の作成方法、コンポジットパーティション、パーティションの追加・削除・結合・交換・TRUNCATE、パーティションプルーニングの仕組みまで網羅します。
Oracle

【Oracle】LISTAGG関数の使い方完全ガイド|カンマ区切りで文字列を結合・DISTINCT・4000バイト制限の対処法

OracleのLISTAGG関数でグループ内の値をカンマ区切りなどで1行に結合する方法を完全解説。基本構文・GROUP BYとの組み合わせ・DISTINCT(19c)・ON OVERFLOW TRUNCATE(12c R2)・4000バイト制限のXMLAGG代替・NULL値の扱い・実務パターンまで網羅します。
Oracle

【Oracle】SQLヒント句の使い方完全ガイド|FULL・INDEX・USE_NL・USE_HASH・PARALLEL・実行計画の制御方法

OracleのSQLヒント句(/*+ HINT */)を完全解説。FULL/INDEX/INDEX_FFSでアクセスパスを制御する方法、USE_NL/USE_HASH/USE_MERGEでJOIN方式を指定する方法、LEADING/ORDEREDでJOIN順序を決める方法、PARALLEL/APPEND/NO_MERGEの使い方、ヒントが無視されるケースと対処法まで網羅します。
Oracle

【Oracle】DBMS_STATSによる統計情報の手動収集・管理完全ガイド|GATHER_TABLE_STATS・ロック・エクスポート・ヒストグラムまで解説

OracleのDBMS_STATSパッケージによる統計情報の手動収集を完全解説。GATHER_TABLE_STATS/GATHER_SCHEMA_STATSのパラメータ(estimate_percent・method_opt・cascade・degree)、DBA_TAB_STATISTICSでの確認方法、統計ロック/アンロック、エクスポート/インポート、ヒストグラム管理、stale統計の検出まで実務パターンを網羅します。
Oracle

【Oracle】フラッシュバックの使い方完全ガイド|AS OF TIMESTAMP・Flashback Table・Flashback Drop・誤操作からのデータ復旧

Oracleのフラッシュバック機能を完全解説。Flashback Query(AS OF TIMESTAMP/SCN)で過去データを参照する方法、VERSIONS BETWEENで変更履歴を追跡する方法、Flashback Tableでテーブルを過去の状態に戻す方法、Flashback DropでDROP TABLEを取り消す方法、誤DELETE/UPDATEからのデータ復旧パターンまで網羅します。
Oracle

【Oracle】分析関数(ウィンドウ関数)の使い方完全ガイド|LAG・LEAD・FIRST_VALUE・NTILE・累計・移動平均まで解説

OracleのOVER句を使った分析関数(ウィンドウ関数)を完全解説。LAG/LEAD(前後行参照)・FIRST_VALUE/LAST_VALUE・NTH_VALUE・NTILE・CUME_DIST・累積合計・移動平均の書き方、PARTITION BY/ORDER BY/ウィンドウ句の仕組み、前月比・トップN抽出・重複削除への実務適用パターンまで網羅します。
Oracle

【Oracle】階層問い合わせの使い方完全ガイド|START WITH・CONNECT BY・LEVEL・SYS_CONNECT_BY_PATH・CONNECT_BY_ROOTまで解説

OracleのSTART WITH・CONNECT BY PRIORを使った階層問い合わせを完全解説。LEVEL・SYS_CONNECT_BY_PATH・CONNECT_BY_ROOT・CONNECT_BY_ISLEAF・ORDER SIBLINGS BY・NOCYCLEの使い方、組織図・部品表への実務パターン、WITH句(再帰CTE)との使い分けまで網羅します。
Oracle

【Oracle】正規表現(REGEXP)関数の使い方完全ガイド|REGEXP_LIKE・REGEXP_REPLACE・REGEXP_SUBSTR・REGEXP_INSTR・REGEXP_COUNT

OracleのREGEXP_LIKE・REGEXP_REPLACE・REGEXP_SUBSTR・REGEXP_INSTR・REGEXP_COUNTの使い方を完全解説。POSIX正規表現のメタ文字・修飾子の一覧から、メールアドレス検証・電話番号抽出・HTMLタグ除去・数値チェックなど実務パターンまで豊富なSQL例で紹介します。
Oracle

【Oracle】マテリアライズドビューの作成・管理・リフレッシュ完全ガイド|FAST/COMPLETE・クエリリライト・DBMS_MVIEWまで解説

OracleのマテリアライズドビューをCREATE MATERIALIZED VIEWで作成し、FAST/COMPLETE/FORCEリフレッシュモードや自動リフレッシュのスケジュール設定を完全解説。マテリアライズドビューログ・クエリリライト・DBMS_MVIEW.REFRESH・DBA_MVIEWSによる確認方法まで実務パターンを網羅します。
Oracle

【Oracle】WITH句(共通表式)の使い方完全ガイド|サブクエリの可読性改善・再帰CTE・パフォーマンス制御まで解説

OracleのWITH句(共通表式・CTE)の基本構文から複数CTE定義・再帰CTE・MATERIALIZEヒントによるパフォーマンス制御まで完全解説。サブクエリとの使い分け・累計計算・組織図の階層表示など実務パターンを豊富なSQLサンプルで紹介します。
Oracle

【Oracle】セッションの確認・強制切断方法完全ガイド|V$SESSION・ロック調査・ALTER SYSTEM KILL SESSION

OracleのV$SESSIONでセッション一覧を確認し、ロック待ちセッションを特定してALTER SYSTEM KILL SESSIONで強制切断する方法を完全解説。DBA_BLOCKERS・DBA_WAITERSによるロック調査・デッドロック検出・接続数上限変更まで実務パターンを網羅します。
Oracle

【Oracle】リスナーログの場所と確認方法|listener.log・log.xml・切り詰め・読み方完全ガイド

Oracle リスナーが接続エラーを起こしたとき、真っ先に確認すべきなのがリスナーのログファイルです。しかし「ログがどこにあるか分からない」「ログが大きくなりすぎて切り詰めたい」という悩みを持つ方は多いです。本記事では Oracle リスナ...
Oracle

【Oracle】listener.ora の場所はどこ?|デフォルトパス・TNS_ADMIN・検索コマンド完全ガイド

Oracle の接続設定でよく迷うのが listener.ora ファイルの場所です。バージョン・OS・インストール構成によってパスが異なるうえ、TNS_ADMIN 環境変数で上書きされていることもあります。本記事では listener.o...
Oracle

【Oracle】リスナーを起動する方法|lsnrctl start・自動起動設定・起動しない場合の対処まで完全解説

Oracle データベースに接続するには、リスナーが起動している必要があります。本記事では lsnrctl start によるリスナーの起動手順から、Linux・Windows それぞれの自動起動設定、起動しない場合のトラブルシューティング...
Oracle

【Oracle】リスナーの確認方法完全ガイド|lsnrctl status・tnsping・netstat・DBビュー活用

Oracleリスナーの状態確認方法を完全解説。lsnrctl statusの出力の読み方・tnsping・netstat/ssによるポート確認・v$listener_networkなどDBビュー・リスナーログ確認まで、診断シナリオ別の手順をまとめています。