PL/SQL

【PL/SQL】動的SQLのバインド変数設計|カーソル共有とハードパースを改善

PL/SQLの動的SQLでバインド変数を正しく使い、SQLインジェクションを防ぎながらカーソル共有率を高める方法を解説します。EXECUTE IMMEDIATE、可変長IN条件、FORALL、RETURNING、DBMS_SQL、V$SQLによる診断まで実行可能なコードで整理します。
PL/SQL

【PL/SQL】非同期処理設計の高度化:ジョブチェーンとイベント駆動制御

DBMS_SCHEDULERのチェーンとOracle AQを使った非同期処理を、EVENT_MESSAGE、分岐、冪等性、再実行、監視、ジョブクラス、ウィンドウ設定まで実行可能な構成で解説します。
PL/SQL

【PL/SQL】パッケージAPI設計における互換性維持とバージョン戦略

PL/SQLパッケージAPIの後方互換性を守るため、仕様部の変更、デフォルト引数、ラッパー、非推奨化、JSON契約、ALL_ARGUMENTS比較、EBR、回帰テストを実務向けに解説します。
PL/SQL

【PL/SQL】マルチスキーマ環境での権限管理とInvoker Rights設計

PL/SQLのAUTHID CURRENT_USERとAUTHID DEFINERをマルチスキーマ環境で使い分ける方法を、INHERIT PRIVILEGES、直接GRANT、ロール、名前解決、DBMS_ASSERTまで実務向けに解説します。
PL/SQL

【PL/SQL】ロギングとトレーサビリティを両立する監査設計

PL/SQLで業務ログ、監査、トレースを相関IDで結び、DBMS_APPLICATION_INFO、Unified Auditing、FGA、JSONログ、保持期間、個人情報マスクまで実務向けに整理します。
PL/SQL

【PL/SQL】大規模システムにおけるモジュール分割と依存制御の最適化

大規模PL/SQLシステムでAPI層、Service層、DAO層、Common層を分け、ALL_DEPENDENCIESで依存方向・循環依存・公開APIを監査する設計手法を解説します。
PL/SQL

【PL/SQL】ジョブ実行履歴の集中管理と異常検知(DBMS_SCHEDULER+ロギング)

DBMS_SCHEDULERジョブの実行履歴、ハートビート、SLA、異常検知をPL/SQLで集中管理する設計を、引数設定・索引・ロギング注意点まで実務向けに解説します。
PL/SQL

【PL/SQL】トランザクション分離レベル別の一貫性テストと検証パターン

OracleのREAD COMMITTED、SERIALIZABLE、READ ONLYを二セッションで検証し、ORA-08177、ORA-01555、UNDO、FOR UPDATE、再試行設計まで実務向けに整理します。
PL/SQL

【PL/SQL】パッケージ間依存を可視化するメタデータ解析(ALL_DEPENDENCIES活用)

OracleのALL_DEPENDENCIESでPL/SQLパッケージ・プロシージャ・ビューの依存関係を確認し、影響範囲、INVALID、再コンパイル順序を実務目線で整理します。
PL/SQL

【PL/SQL】実行計画と統計情報でSQL性能診断する方法|DBMS_XPLAN・A-Rows・SQLモニタ

PL/SQLとOracle SQLの性能診断を、DBMS_XPLAN、A-Rows/E-Rows、SQLモニタ、統計情報、バインド変数から実務手順で解説します。
PL/SQL

【PL/SQL】コードデプロイの自動化とEdition管理(CI/CD連携)

PL/SQLのコードデプロイをCI/CDへ組み込む方法を解説します。EBR、Editioning View、Crossedition Trigger、SQLcl実行順、品質ゲート、フェイルバックまで実務向けに整理します。
PL/SQL

【PL/SQL】テスト容易性を高めるプロシージャ設計とモック化手法

PL/SQLのプロシージャを自動テストしやすくする設計を解説します。外部依存の分離、モック化、Fake Clock、GTT、utPLSQL、権限とシノニム差し替えの注意点まで実務向けに整理します。
PL/SQL

【PL/SQL】DBMS_PARALLEL_EXECUTEによる大規模バッチの並列化戦略

PL/SQLでDBMS_PARALLEL_EXECUTEを使い、大規模UPDATEをチャンク分割して並列実行する方法を解説します。ROWID分割、RUN_TASK、TASK_STATUS、RESUME_TASK、監視SQL、権限、UNDO対策、再実行設計まで実務向けに整理します。
PL/SQL

【PL/SQL】マルチセッション環境での排他・同時実行制御の高度設計

PL/SQLのマルチセッション環境で必要な排他・同時実行制御を解説します。SELECT FOR UPDATE、SKIP LOCKED、DBMS_LOCK、楽観ロック、ORA-00054/00060/08177、再試行、監視SQLまで実務向けに整理します。
PL/SQL

【PL/SQL】例外をJSON形式で返すREST対応API設計

PL/SQLでREST/API向けに例外をJSON形式へ正規化する設計を解説します。Oracle 19cで動くJSON_OBJECTの書き方、ORA例外マッピング、ORDS公開、HTTPステータス、相関ID、監査ログまで実務向けに整理します。
PL/SQL

【PL/SQL】仮想列とトリガーの整合性設計|制約との使い分け・mutating table・監査

Oracleの仮想列とPL/SQLトリガーは、どちらもデータ整合性をデータベース側に寄せるための仕組みです。ただし、同じ目的で使うものではありません。仮想列は同じ行から計算できる派生値、制約は単純な禁止ルール、トリガーは副作用や監査、複数列更新の補正に使います。この記事では、制約との使い分け、mutating table、compound trigger、監査、INVALID対策、本番チェックまで整理します。
PL/SQL

【PL/SQL】Result Cacheとマテリアライズドビュー併用戦略|鮮度SLA・QUERY REWRITE・監視

Result Cacheとマテリアライズドビューは、どちらも重い処理を再利用して速くする仕組みですが、守備範囲が違います。MVは重い集合処理や集計を前計算し、Result Cacheは同じ引数で何度も呼ばれるPL/SQL関数やSQL結果の再計算を抑えます。この記事では鮮度SLA、QUERY REWRITE、DBMS_MVIEW、V$RESULT_CACHE、更新運用、監視、避ける設計まで実務目線で整理します。
PL/SQL

【PL/SQL】例外設計と再試行パターン|一時障害・冪等性・SAVEPOINT・DBMS_SCHEDULER

大規模PL/SQLでは、例外を握りつぶすのではなく、再試行できる一時障害と即失敗すべき恒久障害に分け、冪等性、部分ロールバック、監査ログ、ジョブ再実行を含めて設計する必要があります。
PL/SQL

【PL/SQL】インストゥルメンテーション設計|DBMS_APPLICATION_INFO・ログトレース

PL/SQLの障害対応と性能調査を楽にするには、ログ、トレース、監査、メトリクスを分けて設計し、相関ID、MODULE/ACTION、CLIENT_IDENTIFIER、エラー情報を一貫して残す必要があります。
PL/SQL

【PL/SQL】ユーザー定義集計関数の作り方|ODCIAggregate・CLOB対応・並列実行

Oracleのユーザー定義集計関数は、ODCIAggregateインターフェースを実装したオブジェクト型をSQL集計関数として登録する仕組みです。LISTAGGで足りない集約、CLOB集約、独自統計、JSON配列化などの実装に使えます。