目次
- 表一覧
- タイトルおよび著作権情報
- はじめに
- 『Oracle Database開発ガイド』のこのリリースでの変更点
-
第I部 データベース開発の基礎
- 1 設計の基本
- 2 データベース・アプリケーションの接続方法
-
3 パフォーマンスとスケーラビリティ
- 3.1 パフォーマンス戦略
- 3.2 パフォーマンスのためのツール
- 3.3 データベース・パフォーマンスの監視
- 3.4 パフォーマンスのテスト
- 3.5 クライアント結果キャッシュの使用
- 3.6 文キャッシング
- 3.7 OCIクライアント文キャッシュの自動チューニング
- 3.8 クライアント側デプロイメント・パラメータ
- 3.9 問合せ変更通知の使用
-
3.10 データベース常駐接続プールの使用
- 3.10.1 データベース常駐接続プールの理解
- 3.10.2 DRCPの構成
- 3.10.3 複数プールDRCPの使用
- 3.10.4 プロキシ・セッションの共有
- 3.10.5 DRCPでのJDBCの使用
- 3.10.6 DRCPでのOCIセッション・プールAPIの使用
- 3.10.7 セッション純正値
- 3.10.8 接続クラス
- 3.10.9 セッション純正値および接続クラスのデフォルト
- 3.10.10 接続文字列での純正値および接続クラスの設定
- 3.10.11 DRCPの起動
- 3.10.12 DRCPの接続ドレインの停止
- 3.10.13 DRCPの有効化
- 3.10.14 複数プールDRCP内のプールへの接続
-
3.10.15 暗黙的接続プーリング
- 3.10.15.1 暗黙的なステートフル・セッションおよびステートレス・セッション
- 3.10.15.2 文境界とトランザクション境界
- 3.10.15.3 暗黙的接続プールの境界の構成
- 3.10.15.4 暗黙的接続プーリングの状態に対するラウンドトリップOCIコールの影響
- 3.10.15.5 使用するプール境界の決定
- 3.10.15.6 CMAN-TDMおよびPRCPを使用した暗黙的接続プーリング
- 3.10.15.7 デプロイメント時の境界でのセッション状態の設定またはリセット
- 3.10.15.8 暗黙的接続プーリングでのセッション・キャッシュ・カーソルの使用
- 3.10.15.9 セキュリティ
- 3.10.16 OCIアプリケーションにおけるDRCPのスケーラビリティの利用
- 3.10.17 JavaアプリケーションにおけるDRCPのスケーラビリティの利用
- 3.10.18 DRCPの使用に関するベスト・プラクティス
- 3.10.19 互換性と移行
- 3.10.20 DRCPとOracle Databaseのネイティブ・ネットワーク暗号化の併用
- 3.10.21 DRCPの制限事項
- 3.10.22 カスタム・プールでのDRCPの使用
- 3.10.23 明示的なステートフルまたはステートレス・セッションのマーキング
- 3.10.24 Oracle Real Application ClustersでのDRCPの使用方法
- 3.10.25 DRCPとData Guard
- 3.11 Memoptimizeプール
- 3.12 Oracle RACシャーディング
- 4 Oracle Real-World Performanceのアプリケーションの設計
- 5 セキュリティ
- 6 高可用性
- 7 高度なPL/SQL機能
-
第II部 アプリケーション開発者用のSQL
-
8 アプリケーション開発者用のSQL処理
- 8.1 SQL文の処理の説明
- 8.2 操作のトランザクションへのグループ化
- 8.3 読取り専用トランザクションでの反復可能読取りの保証
- 8.4 明示的な表のロック
- 8.5 Oracle Lock Managementサービス(ユーザー・ロック)の使用
- 8.6 シリアライズ可能トランザクションを使用した同時実行性の制御
- 8.7 非ブロック化およびブロック化のDDL文
- 8.8 自律型トランザクション
- 8.9 記憶域割当てエラー後の実行の再開
- 8.10 IF EXISTSおよびIF NOT EXISTSの使用
- 9 データベース・アプリケーションにおけるSQLデータ型の使用
- 10 データベースへのアプリケーション・データ使用状況の登録
- 11 データベース・アプリケーションでの正規表現の使用
- 12 データベース・アプリケーションでの索引の使用
-
13 データベース・アプリケーションにおけるデータ整合性のメンテナンス
- 13.1 制約を使用したビジネス・ルールの施行
- 13.2 制約とアプリケーション・コードの両方を使用したビジネス・ルールの施行
- 13.3 制約で使用する索引の作成
- 13.4 NOT NULL制約を使用する場合
- 13.5 デフォルトの列値を使用する場合
- 13.6 表の主キーの選択(PRIMARY KEY制約)
- 13.7 UNIQUE制約を使用する場合
- 13.8 FOREIGN KEY制約を使用した参照整合性の施行
- 13.9 制約に対応付けられた索引の領域と時間のオーバーヘッドの最小化
- 13.10 外部キーを索引付けするためのガイドライン
- 13.11 分散データベース内の参照整合性
- 13.12 CHECK制約を使用する場合
- 13.13 PRECHECKを使用したCHECK制約の事前検証
- 13.14 制約の定義の例
- 13.15 制約の使用可能および使用禁止
- 13.16 制約の変更
- 13.17 制約名の変更
- 13.18 制約の削除
- 13.19 FOREIGN KEY制約の管理
- 13.20 制約に関する情報の表示
-
8 アプリケーション開発者用のSQL処理
-
第III部 アプリケーション開発者用のPL/SQL
-
14 PL/SQLサブプログラムおよびパッケージのコード化
- 14.1 PL/SQLサブプログラムの概要
- 14.2 PL/SQLパッケージの概要
- 14.3 PL/SQLユニットの概要
- 14.4 PL/SQLサブプログラムおよびパッケージの作成
- 14.5 PL/SQLサブプログラムおよびパッケージの変更
- 14.6 推奨されないパッケージ、サブプログラムおよびタイプ
- 14.7 PL/SQLサブプログラムおよびパッケージの削除
- 14.8 システム固有の実行のためのPL/SQLユニットのコンパイル
- 14.9 ストアドPL/SQLサブプログラムの起動
- 14.10 SQL文からのストアドPL/SQLファンクションの起動
- 14.11 ストアド・サブプログラムの分析とデバッグ
- 14.12 パッケージの無効化とセッションの状態
- 14.13 例: ORA-04068エラーの発生
- 14.14 例: ORA-04068の検出
- 15 PL/Scopeの使用
- 16 PL/SQL階層プロファイラの使用
- 17 品質を維持するためのPL/SQL基本ブロック・カバレッジの使用
-
18 PL/SQL Webアプリケーションの開発
- 18.1 PL/SQL Webアプリケーションの概要
- 18.2 PL/SQL Webアプリケーションの実装
- 18.3 mod_plsqlゲートウェイを使用したクライアント・リクエストのPL/SQL Webアプリケーションへのマップ
-
18.4 埋込みPL/SQLゲートウェイの使用
- 18.4.1 埋込みPL/SQLゲートウェイによるクライアント・リクエストの処理方法
- 18.4.2 埋込みPL/SQLゲートウェイのインストール
- 18.4.3 埋込みPL/SQLゲートウェイの構成
- 18.4.4 埋込みPL/SQLゲートウェイを介したPL/SQLストアド・サブプログラムの起動
- 18.4.5 埋込みPL/SQLゲートウェイによるアプリケーション・アクセスの保護
- 18.4.6 埋込みPL/SQLゲートウェイの制限事項
- 18.4.7 埋込みPL/SQLゲートウェイの使用: 使用例
- 18.5 PL/SQLを使用したHTML出力の生成
- 18.6 PL/SQL Webアプリケーションへのパラメータ渡し
- 18.7 PL/SQLサブプログラムでのネットワーク操作の実行
-
19 連続問合せ通知(CQN)の使用
- 19.1 オブジェクト変更通知(OCN)について
- 19.2 問合せ結果変更通知(QRCN)について
- 19.3 通知を生成するイベント
- 19.4 通知内容
- 19.5 CQNに適したアプリケーション
- 19.6 CQN登録の作成
- 19.7 PL/SQLを使用したCQN登録の作成
- 19.8 OCIを使用したCQN登録の作成
- 19.9 CQN登録の問合せ
- 19.10 通知の解析
-
14 PL/SQLサブプログラムおよびパッケージのコード化
-
第IV部 アプリケーション開発者向けの高度なトピック
-
20 プログラミング環境の選択
- 20.1 アプリケーション・アーキテクチャの概要
- 20.2 プログラム・インタフェースの概要
- 20.3 PL/SQLの概要
- 20.4 Oracle Database Javaサポートの概要
-
20.5 JavaScriptの概要
- 20.5.1 Multilingual Engineの概要
- 20.5.2 MLEの概念
- 20.5.3 MLE実行コンテキストとランタイムの分離の理解
- 20.5.4 MLE環境の概要
- 20.5.5 JavaScript MLEモジュールの概要
- 20.5.6 JavaScript MLEコール仕様の概要
- 20.5.7 データベースでのJavaScriptの起動
- 20.5.8 MLEモジュールを使用したJavaScriptの起動
- 20.5.9 動的MLE実行を使用したJavaScriptの起動
- 20.5.10 MLEでJavaScriptを操作するための権限
- 20.5.11 サポートされているその他のMLE機能
- 20.6 PL/SQL、JavaまたはJavaScriptの選択
- 20.7 プリコンパイラの概要
- 20.8 OCIおよびOCCIの概要
- 20.9 プリコンパイラおよびOCIの比較
- 20.10 Oracle Data Provider for .NET(ODP.NET)の概要
- 20.11 OraOLEDBの概要
-
21 複数のプログラミング言語を使用したアプリケーションの開発
- 21.1 複数言語プログラムの概要
- 21.2 外部プロシージャの概要
- 21.3 外部プロシージャ用のコール仕様の概要
- 21.4 外部プロシージャのロード
- 21.5 外部プロシージャの公開
- 21.6 Javaクラス・メソッドの発行
- 21.7 外部Cプロシージャの発行
- 21.8 コール仕様の位置
- 21.9 コール仕様による外部Cプロシージャへのパラメータの受渡し
- 21.10 CALL文による外部プロシージャの実行
- 21.11 複数言語のプログラム・エラーおよび例外処理
- 21.12 外部Cプロシージャでのサービス・ルーチンの使用
- 21.13 外部Cプロシージャを使用したコールバックの実行
-
22 Oracle Flashback Technologyの使用
- 22.1 Oracle Flashback Technologyの概要
- 22.2 Oracle Flashback Technologyに関するデータベースの構成
- 22.3 Oracle Flashback Query(SELECT AS OF)の使用
- 22.4 Oracle Flashback Version Queryの使用
- 22.5 Oracle Flashback Transaction Queryの使用
- 22.6 Oracle Flashback Transaction QueryとOracle Flashback Version Queryの併用
- 22.7 DBMS_FLASHBACKパッケージの使用
- 22.8 フラッシュバック・トランザクションの使用
- 22.9 フラッシュバック時間移動の使用
- 22.10 Oracle Flashback Technologyの一般ガイドライン
- 22.11 Oracle Virtual Private DatabaseポリシーとOracle Flashback Time Travel
- 22.12 Oracle Flashback Technologyのパフォーマンス・ガイドライン
- 22.13 マルチテナント・コンテナ・データベースでのOracle Flashback Technologyの制限
- 23 パブリッシュ・サブスクライブ・モデルでのアプリケーションの開発
-
24 Oracle ODBC Driverの使用方法
- 24.1 Oracle ODBC Driverについて
- 24.2 すべてのユーザー
- 24.3 上級ユーザー
-
24.4 プログラマ
- 24.4.1 接続文字列のフォーマット
- 24.4.2 SQLDriverConnectの実装
- 24.4.3 プログラムでのロック・タイムアウトの削減
- 24.4.4 odbc32.lib (Windows)またはlibodbc.so (UNIX)とのリンク
- 24.4.5 ROWIDの情報
- 24.4.6 WHERE句でのROWID
- 24.4.7 結果セットの有効化
- 24.4.8 EXEC構文の有効化
- 24.4.9 Oracle RAC環境における接続障害のイベント通知の有効化
- 24.4.10 ODBCを通じた暗黙的結果機能の使用
- 24.4.11 ODBCでのOracle TIMESTAMP WITH TIME ZONEおよびTIMESTAMP WITH LOCAL TIME ZONE列タイプのサポートについて
- 24.4.12 Oracleクライアント(OCI、SQL*Plus、Oracle ODBC Driverなど)でORA_SDTZを設定した場合の影響について
- 24.4.13 サポートされている機能
- 24.4.14 Unicodeのサポート
- 24.4.15 パフォーマンスとチューニング
-
25 識別コード・パッケージの使用
- 25.1 識別の概念
- 25.2 識別コード・パッケージの概要
-
25.3 識別コード・パッケージの使用
-
25.3.1 MGD_ID ADTを使用したOracle DatabaseへのRFIDタグの格納
- 25.3.1.1 MGD_ID列型を使用した表の作成と、列へのEPCタグ・エンコーディングの格納
-
25.3.1.2 RFIDタグを表現するMGD_IDオブジェクトの構成
- 25.3.1.2.1 MGD_IDオブジェクト(SGTIN-64)の構成、およびカテゴリIDとコンポーネントのリストの受渡し
- 25.3.1.2.2 MGD_IDオブジェクト(SGTIN-64)の構成、およびカテゴリID、タグ識別子と追加の必須パラメータのリストの受渡し
- 25.3.1.2.3 MGD_IDオブジェクト(SGTIN-64)の構成、およびカテゴリ名、カテゴリ・バージョン(NULLの場合、最新のバージョンを使用)とコンポーネントのリストの受渡し
- 25.3.1.2.4 MGD_IDオブジェクト(SGTIN-64)の構成、およびカテゴリ名、カテゴリ・バージョン、タグ識別子と追加の必須パラメータのリストの受渡し
- 25.3.1.3 データベース表へのMGD_IDオブジェクトの挿入
- 25.3.1.4 MGD_ID列型の問合せ
- 25.3.2 MGD_ID列型のメンバー関数を使用したファンクション索引の構築
- 25.3.3 MGD_ID ADT関数の使用
- 25.3.4 識別コードのカテゴリの定義と既存のカテゴリへのコード体系の追加
-
25.3.1 MGD_ID ADTを使用したOracle DatabaseへのRFIDタグの格納
- 25.4 識別コード・パッケージ・タイプ
- 25.5 DBMS_MGD_ID_UTLパッケージ
- 25.6 識別コード・メタデータ表およびビュー
-
25.7 電子製品コード(EPC)の概念
- 25.7.1 RFIDテクノロジとEPCバージョン1.1コード体系
-
25.7.2 製品コードの概念と現在の使用
- 25.7.2.1 電子製品コード(EPC)
- 25.7.2.2 Global Trade Identification Number (GTIN)およびSerializable Global Trade Identification Number (SGTIN)
- 25.7.2.3 Serial Shipping Container Code (SSCC)
- 25.7.2.4 Global Location Number (GLN)およびSerializable Global Location Number (SGLN)
- 25.7.2.5 Global Returnable Asset Identifier (GRAI)
- 25.7.2.6 Global Individual Asset Identifier (GIAI)
- 25.7.2.7 RFID EPCネットワーク
- 25.8 Oracle Database Tag Data Translationスキーマ
- 26 マイクロサービス・アーキテクチャ
- 27 Oracle Backend for Spring Boot and Microservices
- 28 Sagaを使用したアプリケーションの開発
- 29 ロックフリー予約の使用
-
30 Oracle XAを使用したアプリケーションの開発
- 30.1 X/Open DTP
- 30.2 Oracle XAライブラリ・サブプログラム
- 30.3 XAアプリケーションの開発およびインストール
- 30.4 XAアプリケーションのトラブルシューティング
- 30.5 Oracle XAの問題および制限事項
- 31 スキーマ・オブジェクトの依存性の理解
-
32 エディションベースの再定義の使用
- 32.1 エディションベースの再定義の概要
-
32.2 エディション
- 32.2.1 エディション・オブジェクトと非エディション・オブジェクト
- 32.2.2 エディションの作成
- 32.2.3 エディション・オブジェクトおよび変更時のコピー
- 32.2.4 一部のユーザーに対してエディションを使用可能にする
- 32.2.5 すべてのユーザーに対してエディションを使用可能にする
- 32.2.6 現行エディションとセッション・エディション
- 32.2.7 エディションのリタイア
- 32.2.8 エディションの削除
- 32.3 エディションおよび監査ポリシー
- 32.4 エディショニング・ビュー
- 32.5 crosseditionトリガー
- 32.6 EBR機能に関する情報の表示
-
32.7 アプリケーションをアップグレードするためのEBRの使用
- 32.7.1 アプリケーションでのエディショニング・ビューの使用準備
- 32.7.2 エディションのみを使用するEBRの手順
- 32.7.3 エディショニング・ビューを使用するEBRの手順
- 32.7.4 crosseditionトリガーを使用するEBRの手順
- 32.7.5 アプリケーション・アップグレードのロールバック
- 32.7.6 使用されていない表の列が占める領域の再利用
- 32.7.7 例: アプリケーションをアップグレードするためのEBRの使用
- 33 トランザクション・ガードの使用
- 34 表のDDL変更通知
-
20 プログラミング環境の選択
- A.1 付録: Sagaフレームワークのトラブルシューティング
- B.1 付録: UTL_HTTPのトラブルシューティング
- 索引