Pervasive.SQL User’s Guide disclaimer PERVASIVE SOFTWARE INC. LICENSES THE SOFTWARE AND DOCUMENTATION PRODUCT TO YOU OR YOUR COMPANY SOLELY ON AN "AS IS" BASIS AND SOLELY IN ACCORDANCE WITH THE TERMS AND CONDITIONS OF THE ACCOMPANYING LICENSE AGREEMENT. PERVASIVE SOFTWARE INC. MAKES NO OTHER WARRANTIES WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE SOFTWARE OR THE CONTENT OF THE DOCUMENTATION; PERVASIVE SOFTWARE INC. HEREBY EXPRESSLY STATES AND YOU OR YOUR COMPANY ACKNOWLEDGES THAT PERVASIVE SOFTWARE INC. DOES NOT MAKE ANY WARRANTIES, INCLUDING, FOR EXAMPLE, WITH RESPECT TO MERCHANTABILITY, TITLE, OR FITNESS FOR ANY PARTICULAR PURPOSE OR ARISING FROM COURSE OF DEALING OR USAGE OF TRADE, AMONG OTHERS. trademarks Btrieve and XQL are registered trademarks of Pervasive Software Inc. Built on Btrieve, Built on Scalable SQL, Client/Server in a Box, DDF Ease InstallScout, MicroKernel Database Engine, MicroKernel Database Architecture, Navigational Client/Server, Pervasive.SQL, Scalable SQL, Smart Components, Smart Component Management, Smart Naming, SmartScout, and Xtrieve PLUS are trademarks of Pervasive Software Inc. Microsoft, MS-DOS, Windows, Windows NT, Win32, Win32s, and Visual Basic are registered trademarks of Microsoft Corporation. Windows 95 is a trademark of Microsoft Corporation. NetWare and Novell are registered trademarks of Novell, Inc. NetWare Loadable Module, NLM, Novell DOS, Transaction Tracking System, and TTS are trademarks of Novell, Inc. All company and product names are the trademarks or registered trademarks of their respective companies. Copyright 1998 Pervasive Software Inc. All rights reserved. Reproduction, photocopying, or transmittal of this publication, or portions of this publication, is prohibited without the express prior written consent of the publisher, unless such reproduction, photocopying, or transmittal is part of a Derivative Software Product as defined in the licenses granted in conjunction with the purchase of this publication and associated software. This product includes software developed by Powerdog Industries. 1994 Powerdog Industries. All rights reserved. Pervasive Software Inc. 12365 Riata Trace Parkway, Bldg. II Austin, Texas 78727 Pervasive.SQL User’s Guide August 1998 Part Number 100-003441-003 目次 本書について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 本書の読者 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 本書の構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 表記の規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 1 章 Pervasive.SQL ユーティリティについて . . . . . . . . . ユーティリティの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ファイル システムのセキュリティ . . . . . . . . . . . . . . . . . . . . . . . . . 第 2 章 コンポーネント アーキテクチャ . . . . . . . . . . . . . . Smart Components . . . . . . . . . コンポーネントの ID . . . . . . . . . コンポーネント固有の名前付け . . . ダイナミック バインディング . . . . Pervasive.SQL イベント ログの記録 エラー コードの説明 . . . . . . . . . ロード エラーの診断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 3 章 セットアップ ユーティリティを使ったコンポーネントの 環境設定 . . . . . . . . . . . . . . . . . . . . . . . . . . セットアップ ユーティリティの概要 . . . . . . . . . . . . . . . . . . . . . セットアップ ユーティリティの注意事項 . . . . . . . . . . . . . . . . . . . 他の環境との接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pervasive.SQL を分散型データベース用に設定 . . . . . . . . . . . . パフォーマンスについて . . . . . . . . . . . . . . . . . . . . . . . . アーカイブ ロギングと、トランザクション一貫性保守 . . . . . . . . 設定パラメータについて . . . . . . . . . . . . . . . . . . . . . . . . セットアップ ユーティリティのメイン ウィンドウ . . . . . . . . . . . . . . Scalable SQL エンジンのオプション . . . . . . . . . . . . . . . . . . . . . システム環境設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . [トレースファイル制御] . . . . . . . . . . . . . . . . . . . . . . . . Scalable SQL 通信マネージャのオプション . . . . . . . . . . . . . . . . . . サーバ通信環境設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . Windows 3.x、Windows 9x、および Windows NT に対応した Scalable SQL リクエスタのオプション . . . . . . . . . . . . . . . . . . . . . . . . . . アクセス制御 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DBNames インタフェースのオプション . . . . . . . . . . . . . . . . . . . アクセス制御 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Btrieve リクエスタのオプション . . . . . . . . . . . . . . . . . . . . . . . . クライアント環境設定 . . . . . . . . . . . . . . . . . . . . . . . . . . MicroKernel ルータのオプション . . . . . . . . . . . . . . . . . . . . . . . アクセス制御 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Communications リクエスタの設定 . . . . . . . . . . . . . . . . . . . . . . xi xi xii xiv 1-1 1-2 1-4 2-1 2-2 2-3 2-4 2-6 2-7 2-9 2-9 3-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3-3 3-3 3-3 3-4 3-4 3-5 3-7 3-9 3-9 3-12 3-20 3-20 . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24 3-24 3-29 3-29 3-32 3-32 3-33 3-33 3-35 目次 iii アクセス制御 . . . . . . . . . . . . . . . . MicroKernel Database Engine のオプション . . . ファイル設定 . . . . . . . . . . . . . . . . メモリ リソース . . . . . . . . . . . . . . クライアント/システム トランザクション システム リソース/ディレクトリ . . . . . Btrieve オペレーションのトレース . . . . . NetWare のみの設定 . . . . . . . . . . . . Btrieve 通信マネージャのオプション . . . . . . . サーバ通信環境設定 . . . . . . . . . . . . NetWare のみの設定 . . . . . . . . . . . . . . . . . . . . . . . 3-35 3-37 3-37 3-41 3-44 3-47 3-54 3-56 3-58 3-58 3-60 第 4 章 DDF Ease を使った DDF の作成と保守 . . . . . . . . . . 4-1 DDF Ease の概要 . . . . . . . . . . . . . . . DDF とは . . . . . . . . . . . . . . . . DDF Ease とは . . . . . . . . . . . . . DDF Ease を使用するための条件 . . . DDF Ease の起動 . . . . . . . . . . . . . . . 既存の Btrieve ファイルに対する DDF の作成 リレーショナル データベースの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 5 章 Pervasive.SQL データベース リソースのモニタ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4-2 4-2 4-3 4-5 4-7 4-18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . モニタ ユーティリティの概要 . . . . . . . . . . . モニタ ユーティリティの起動 . . . . . . . . . . . モニタ ユーティリティ オプションの設定 . . . . . MicroKernel リソースのモニタ . . . . . . . . . . . 画面リフレッシュ オプションの設定 . . . . アクティブ ファイルの表示 . . . . . . . . . ユーザ情報の表示 . . . . . . . . . . . . . . MicroKernel リソースの使用状況の表示 . . . MicroKernel 通信統計情報の表示 . . . . . . Scalable SQL リソースのモニタ . . . . . . . . . . 画面リフレッシュ オプションの設定 . . . . アクティブ Scalable SQL セッションの表示 Scalable SQL リソースの使用状況の表示 . . Scalable SQL 通信統計情報の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-2 5-3 5-5 5-6 5-6 5-6 5-10 5-12 5-14 5-16 5-16 5-16 5-20 5-21 第 6 章 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト . . . . . . . . . . . . . 6-1 ファンクション エグゼキュータの概要 . . . . . . . . . . . . . . . . . . . . . . . ファンクション エグゼキュータ ユーティリティの起動 . . . . . . . . . . . . . . . ファンクション エグゼキュータ メイン ウィンドウの概要 . . . . . . . . . . . . . キー バッファまたはデータ バッファの編集(OS/2(サーバ版)クライアントのみ) オペレーションの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ファイルのオープン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 特定のキー値が存在することの検出 . . . . . . . . . . . . . . . . . . . . . . iv Pervasive.SQL User’s Guide 6-2 6-3 6-6 6-11 6-12 6-12 6-12 第 7 章 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 . . . . . . . . . . . . . . メンテナンス ユーティリティの概要 . . . . . . . . . . . . . . . . . . . Btrieve 対話型メンテナンス ユーティリティ(DDF Ease、SQLScope、 ビュー変換ユーティリティ) . . . . . . . . . . . . . . . . . . . . . . Btrieve メンテナンス ユーティリティの起動 . . . . . . . . . . . . 拡張ファイルのサポート . . . . . . . . . . . . . . . . . . . . . . ファイル情報エディタの概要 . . . . . . . . . . . . . . . . . . . . 既存ファイルの情報のロード . . . . . . . . . . . . . . . . . . . . 新しいファイルの作成 . . . . . . . . . . . . . . . . . . . . . . . . Btrieve データ ファイルのコンパクト化 . . . . . . . . . . . . . . 6.x データの表示と非表示 . . . . . . . . . . . . . . . . . . . . . . キーのオルタネート コレーティング シーケンスの指定 . . . . . . 情報レポートの作成 . . . . . . . . . . . . . . . . . . . . . . . . . オーナ ネームの設定と消去 . . . . . . . . . . . . . . . . . . . . . インデックスの作成と削除 . . . . . . . . . . . . . . . . . . . . . レコードのインポート、エクスポート、およびコピー . . . . . . . システム障害後のデータの回復 . . . . . . . . . . . . . . . . . . . Btrieve コマンド ライン メンテナンス ユーティリティ(BUTIL). . . . . BUTIL の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . データのインポートとエクスポート . . . . . . . . . . . . . . . . データファイルの作成と修正 . . . . . . . . . . . . . . . . . . . . データベースのバックアップ . . . . . . . . . . . . . . . . . . . . システム障害後のデータの回復 . . . . . . . . . . . . . . . . . . . データファイル情報の表示 . . . . . . . . . . . . . . . . . . . . . Btrieve インタフェースモジュールのバージョン表示 . . . . . . . . Btrieve エンジンおよびリクエスタのアンロード(DOS のみ) . . . . . . . . 7-2 . . . . . . . . . . . . . . . . . . . . . . . 7-3 7-4 7-5 7-6 7-11 7-12 7-14 7-14 7-15 7-17 7-19 7-20 7-22 7-27 7-31 7-31 7-36 7-44 7-54 7-58 7-63 7-67 7-67 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 8 章 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 . . . . . . . . . . . . . . . . . . . Scalable SQL メンテナンス ユーティリティの概要 . . . . . . . . . . コマンド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . コマンド フォーマット . . . . . . . . . . . . . . . . . . . . . コマンド オプション . . . . . . . . . . . . . . . . . . . . . . Scalable SQL メンテナンス ユーティリティ の基本的な考え方 コマンド ファイル . . . . . . . . . . . . . . . . . . . . . . . . データのインポートとエクスポート . . . . . . . . . . . . . . . . . . BLOAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LOAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SAVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASCII ファイル フォーマット . . . . . . . . . . . . . . . . . . SDF ファイル フォーマット . . . . . . . . . . . . . . . . . . . データベースのバックアップ . . . . . . . . . . . . . . . . . . . . . STARTBU . . . . . . . . . . . . . . . . . . . . . . . . . . . . ENDBU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . システム障害後のデータの回復 . . . . . . . . . . . . . . . . . . . . ROLLFWD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1 8-2 8-3 8-4 8-5 8-7 8-8 8-9 8-11 8-11 8-13 8-15 8-16 8-17 8-18 8-18 8-19 8-20 8-20 目次 v Scalable SQL インタフェースモジュールのバージョン表示 . . . . . . . . . . . . . VER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-23 8-23 第 9 章 SQLScope を使った SQL ステートメントの実行 . . . . . 9-1 SQLScope の概要 . . . . . . . . . . . ヘルプの使い方 . . . . . . . . . . ショートカット キーの使い方 . . データベースへのログイン . . . . . . . マルチ ログインの管理 . . . . . . データベースからのログアウト . SQL ステートメントの作成と実行 . . . 画面要素の表示と非表示 . . . . . テンプレートの使い方 . . . . . . SQL ステートメントの作成 . . . SQL ステートメントの実行 . . . SQL スクリプトの保存 . . . . . . 結果領域の列幅の調整 . . . . . . リスト領域の更新 . . . . . . . . 参照整合性の管理 . . . . . . . . . . . . 参照制約の一覧表示 . . . . . . . 参照整合性のチェック . . . . . . ファイルレベル情報のチェック . . . . データのインポートとエクスポート . . データのインポート . . . . . . . データのエクスポート . . . . . . 破損したデータ ファイルの修復 . . . . SQLScope のカスタム設定 . . . . . . . デフォルトのログイン設定の指定 環境設定の指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 10 章 参照整合性(RI)のチェックと修復 参照整合性( )のチェックと修復 . . . . . . . . . . . . RI ユーティリティの概要 . . . . . . . . . . . . . . . . . . . . . . . . RI ユーティリティのコマンド ファイル . . . . . . . . . . . . . 名前付きデータベースを対象とする参照整合性(RI)の検証と再確立 LIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CHECK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 第 11 章 MicroKernel データ ファイルの変換 . . . . . . . . . . . MicroKernel データ ファイルの変換 . . . . . . . . . . . 対話型リビルド ユーティリティ . . . . . . . . . . コマンドライン リビルド ユーティリティ . . . . . テンポラリ ファイルの削除 . . . . . . . . . . . . Scalable SQL 3.01 ビューの 4.x への移行 . . . . . . . . ビュー変換ユーティリティの注意事項 . . . . . . . ビュー変換ユーティリティの起動 . . . . . . . . . ストアド ビュー定義のテキストへの変換 . . . . . ストアド ビュー定義の Scalable SQL 4.x への変換 vi Pervasive.SQL User’s Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2 9-2 9-3 9-5 9-7 9-7 9-8 9-9 9-9 9-10 9-12 9-14 9-15 9-16 9-17 9-17 9-19 9-22 9-25 9-25 9-27 9-29 9-31 9-31 9-32 10-1 10-2 10-2 10-5 10-5 10-7 11-1 11-2 11-3 11-9 11-12 11-13 11-13 11-14 11-14 11-16 付録 A Smart Components のタイプ コード . . . . . . . . . . . A-1 付録 B ディスクリプション ファイル . . . . . . . . . . . . . . . B-1 ディスクリプション ファイルの規則 . . . . . . . . . . . . . . . . . . . . . . . . ディスクリプション ファイルの例 . . . . . . . . . . . . . . . . . . . . . . . . . ディスクリプション ファイルの要素 . . . . . . . . . . . . . . . . . . . . . . . . B-2 B-4 B-6 用語集 索引 ご意見記入用紙 目次 vii 図 3-1 3-2 3-3 3-4 4-1 4-2 4-3 4-4 4-5 4-6 4-7 4-8 4-9 4-10 4-11 4-12 4-13 4-14 4-15 4-16 4-17 4-18 4-19 4-20 4-21 5-1 5-2 5-3 5-4 5-5 5-6 5-7 5-8 5-9 5-10 6-1 6-2 6-3 7-1 7-2 7-3 7-4 7-5 7-6 7-7 7-8 セットアップ ユーティリティのメイン ウィンドウ . . . . . . . . . . . . . . . [名前付きデータベースの管理]ダイアログ . . . . . . . . . . . . . . . . . . . [名前付きデータベースを作成]ダイアログ . . . . . . . . . . . . . . . . . . . [データベース名の修正]ダイアログ . . . . . . . . . . . . . . . . . . . . . . DDF Ease のメイン ウィンドウ . . . . . . . . . . . . . . . . . . . . . . . . . [データベースの新規作成]ダイアログ ボックス . . . . . . . . . . . . . . . . [テーブル作成ウィザード,ステップ 1]ダイアログ ボックス . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - Patients]ダイアログ ボックス . . . [列の分割]ダイアログ ボックス . . . . . . . . . . . . . . . . . . . . . . . . [テーブル作成ウィザード,ステップ 3 - Patients]ダイアログ ボックス . . . [DDF Ease]メイン ウィンドウ− Patients データベースの例 . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - Appointments]ダイアログ ボックス [テーブル作成ウィザード,ステップ 3 - Appointments]ダイアログ ボックス [列の分割]ダイアログ ボックス . . . . . . . . . . . . . . . . . . . . . . . . [テーブル作成ウィザード,ステップ 3 - Procedures]ダイアログ ボックス . . [DDF Ease]メイン ウィンドウ− Patients データベースの例 . . . . . . . . . DDF Ease の[データベースの新規作成]ダイアログ ボックス . . . . . . . . [DDF Ease]メイン ウィンドウ− Customer Orders の例 . . . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - Customers]. . . . . . . . . . . . . . [DDF Ease]メイン ウィンドウ−インデックス挿入の例 . . . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - Orders] . . . . . . . . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - SalesRep] . . . . . . . . . . . . . . [テーブル作成ウィザード,ステップ 2 - SalesOffices]. . . . . . . . . . . . . [DDF Ease]メイン ウィンドウ− Order Entry データベースの例 . . . . . . . [DDF Ease]メイン ウィンドウ−追加データの表示例 . . . . . . . . . . . . . モニタ ユーティリティのメイン ダイアログ . . . . . . . . . . . . . . . . . . [リモートサーバ接続]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . [Monitor の設定]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . [MicroKernel アクティブ ファイル]ダイアログ . . . . . . . . . . . . . . . . [MicroKernel アクティブ ユーザ]ダイアログ . . . . . . . . . . . . . . . . . . [MicroKernel リソース使用状況]ダイアログ . . . . . . . . . . . . . . . . . . [MicroKernel 通信統計情報]ダイアログ . . . . . . . . . . . . . . . . . . . . [Scalable SQL アクティブセッション]ダイアログ . . . . . . . . . . . . . . . [Scalable SQL リソース使用状況]ダイアログ . . . . . . . . . . . . . . . . . [Scalable SQL 通信統計情報]ダイアログ . . . . . . . . . . . . . . . . . . . ファンクション エグゼキュータのメイン ウィンドウ . . . . . . . . . . . . . . ファンクション エグゼキュータのメイン ウィンドウ (OS/2 バージョン(サーバ版のみ) ) . . . . . . . . . . . . . . . . . . . . . . [Edit Data Buffer]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . Btrieve メンテナンス ユーティリティのメイン ウィンドウ . . . . . . . . . . . ファイル情報エディタ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ファイルの選択]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . [ファイルの作成]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . [ディスクリプションファイルコメント]ダイアログ . . . . . . . . . . . . . . [ACS 情報の指定]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . [ファイル情報レポート]ダイアログ . . . . . . . . . . . . . . . . . . . . . . ファイル情報レポートの例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii Pervasive.SQL User’s Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 3-16 3-17 3-19 4-5 4-7 4-8 4-9 4-10 4-11 4-12 4-13 4-14 4-15 4-16 4-17 4-18 4-19 4-20 4-21 4-22 4-23 4-24 4-25 4-27 5-3 5-4 5-5 5-7 5-11 5-13 5-14 5-17 5-20 5-21 6-4 . . . . . . . . . . 6-5 6-11 7-4 7-6 7-11 7-12 7-13 7-15 7-17 7-17 7-9 7-10 7-11 7-12 7-13 7-14 7-15 7-16 7-17 7-18 7-19 7-20 7-21 7-22 8-1 9-1 9-2 9-3 9-4 9-5 9-6 9-7 9-8 9-9 9-10 9-11 9-12 11-1 11-2 11-3 11-4 11-5 B-1 B-2 B-3 B-4 情報レポートのキーおよびセグメント情報と凡例 . . . . . . . . . . . . . . [オーナネームの設定 / クリア]ダイアログ . . . . . . . . . . . . . . . . . [インデックスの作成]ダイアログ . . . . . . . . . . . . . . . . . . . . . . [インデックスの削除]ダイアログ . . . . . . . . . . . . . . . . . . . . . . インポート ASCII ファイルのファイルフォーマット . . . . . . . . . . . . . [データのロード]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . [データの保存]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . [データのコピー]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . [ロールフォワード]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . [ロールフォワードステータス]ダイアログ . . . . . . . . . . . . . . . . . [ロールフォワードエラー]ダイアログ . . . . . . . . . . . . . . . . . . . . メンテナンスユーティリティのコマンド画面 . . . . . . . . . . . . . . . . . CREATE コマンドで使用するサンプルディスクリプションファイル . . . . INDEX コマンドに使用するディスクリプションファイルの例 . . . . . . . . 入力シーケンシャル ファイルに含まれるレコードのフォーマット . . . . . [データベースにログイン]ダイアログ . . . . . . . . . . . . . . . . . . . . [データベースを選択]ダイアログ . . . . . . . . . . . . . . . . . . . . . . SQLScope のメイン ウィンドウ . . . . . . . . . . . . . . . . . . . . . . . [全てのステートメントを実行]ダイアログ . . . . . . . . . . . . . . . . . 実行モードの SQLScope メイン ウィンドウ . . . . . . . . . . . . . . . . . [列幅]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [参照整合性の一覧作成]ダイアログ . . . . . . . . . . . . . . . . . . . . . [参照整合性のチェック]ダイアログ . . . . . . . . . . . . . . . . . . . . . [テーブル統計情報]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . [SQL データのインポート]ダイアログ . . . . . . . . . . . . . . . . . . . [SQL データのエクスポート]ダイアログ . . . . . . . . . . . . . . . . . . [環境設定]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . リビルド ユーティリティのメイン ウィンドウ . . . . . . . . . . . . . . . . [ファイルの選択]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . [設定]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [リビルドの開始]ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . REBUILD.LOG ファイルの内容 . . . . . . . . . . . . . . . . . . . . . . . . ACS ファイル名を使用するディスクリプション ファイル . . . . . . . . . . ACS ID を使用するディスクリプション ファイル . . . . . . . . . . . . . . キー セグメントに ACS ファイル名を使用するディスクリプション ファイル ロギングにシステム定義のキーを使用するディスクリプション ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-18 7-19 7-20 7-22 7-23 7-24 7-25 7-26 7-28 7-29 7-30 7-33 7-48 7-51 8-17 9-5 9-7 9-8 9-12 9-13 9-16 9-18 9-19 9-22 9-26 9-27 9-32 11-4 11-5 11-5 11-8 11-8 B-4 B-5 B-5 B-5 図 ix 表 1-1 2-1 2-2 2-3 3-1 3-2 3-3 4-1 4-2 5-1 6-1 6-2 6-3 7-1 7-2 7-3 7-4 7-5 7-6 7-7 7-8 7-9 8-1 8-2 9-1 9-2 11-1 11-2 11-3 11-4 A-1 B-1 Pervasive.SQL 7のユーティリティ概要 . . . . . . . . . . . . . . . プラットフォームコード . . . . . . . . . . . . . . . . . . . . . . . . コンポーネント タイプ コード . . . . . . . . . . . . . . . . . . . . . イベント ログのフィールド . . . . . . . . . . . . . . . . . . . . . . Pervasive.SQL Win16 版、Win32 版、および OS/2 版のセットアップ ユーティリティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . セットアップ ユーティリティのメイン ウィンドウの要素 . . . . . . [名前付きデータベースの管理]ダイアログの要素 . . . . . . . . . . DDF Ease メイン ウィンドウの機能 . . . . . . . . . . . . . . . . . . Patients データベース テーブルの例 . . . . . . . . . . . . . . . . . . エージェント ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . Win16 に対応したファンクション エグゼキュータのコントロール . . OS/2 に対応したファンクション エグゼキュータのコントロール . . [Edit Data Buffer]ダイアログのコントロール . . . . . . . . . . . . [ファイル仕様]のコントロール . . . . . . . . . . . . . . . . . . . . [キー]のコントロール . . . . . . . . . . . . . . . . . . . . . . . . [キーセグメント]のコントロール . . . . . . . . . . . . . . . . . . [ファイルの作成]ダイアログのコントロール . . . . . . . . . . . . ACS 情報のコントロール . . . . . . . . . . . . . . . . . . . . . . . コマンド ライン メンテナンス ユーティリティのコマンド . . . . . . データのインポートとエクスポートを行うコマンド . . . . . . . . . データファイルの作成と変更を行うコマンド . . . . . . . . . . . . . Continuous オペレーションの開始と終了を行うコマンド . . . . . . . Scalable SQL メンテナンス ユーティリティのコマンド . . . . . . . 外部データ フォーマット . . . . . . . . . . . . . . . . . . . . . . . SQLScope のショートカット キー . . . . . . . . . . . . . . . . . . . 表示されるテーブル統計情報とその説明 . . . . . . . . . . . . . . . リビルド ユーティリティによる変換 . . . . . . . . . . . . . . . . . [設定]ダイアログのコントロール . . . . . . . . . . . . . . . . . . VTEXT32 ユーティリティのオプション . . . . . . . . . . . . . . . . VCONV32 ユーティリティのオプション . . . . . . . . . . . . . . . コンポーネントのタイプ コード . . . . . . . . . . . . . . . . . . . . ディスクリプション ファイル要素の概要 . . . . . . . . . . . . . . . x Pervasive.SQL User’s Guide . . . . . . . . . . . . . . . . . . . . . . . . 1-2 2-4 2-5 2-7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 3-8 3-15 4-6 4-7 5-8 6-6 6-8 6-11 7-7 7-10 7-10 7-12 7-15 7-31 7-36 7-44 7-54 8-3 8-10 9-3 9-23 11-2 11-6 11-15 11-16 A-1 B-6 本書について 本書では、サーバ製品およびワークステーション製品両方の Pervasive.SQL v7.0 のユーティリティについて説明しています。これらのユーティリティで は、サーバおよびワークステーション コンポーネントの設定、データ ファ イルの管理、DDF の作成および更新などのタスクを実行できます。 本書の読者 本書では、Pervasive.SQL v7.0 のサーバ製品およびワークステーション製品 をインストールして実行するユーザに必要な情報を提供します。また、ネッ トワーク上のデータベースの保守を担当するシステム管理者や、 Pervasive.SQL を使ってアプリケーションを開発している開発者に役立つ情 報も用意されています。 Pervasive Software は、本書についてのご意見およびご提案を歓迎いたしま す。読者の皆様のご意見は、今後のリリースに直接役立てたいと考えており ます。本書の終わりにある「ご意見記入用紙」にご記入のうえ、Pervasive Software 宛てに FAX または郵送するか、tyosupport@pervasive.co.jp まで電子 メールをお送りください。 本書について xi 本書の構成 u 第 1 章「Pervasive.SQL ユーティリティについて」 Pervasive.SQL ユーティリティの概要について説明します。 u 第 2 章「コンポーネント アーキテクチャ」 Pervasive.SQL の新機能である Smart Components アーキテクチャについ て説明します。 u 第 3 章「セットアップ ユーティリティを使ったコンポーネントの環境設 定」 セットアップ ユーティリティについて説明します。セットアップ ユー ティリティにより、すべての Pervasive コンポーネントの環境設定が行 えます。 u 第 4 章「DDF Ease を使った DDF の作成と保守」 既存の Btrieve データ ファイルに対する DDF ファイルの作成と保守に ついて説明します。 u 第 5 章「Pervasive.SQL データベース リソースのモニタ」 モニタ ユーティリティについて説明します。モニタ ユーティリティに より、Btrieve および SQL エンジンの稼動状況をモニタできます。 u 第6章 「ファンクション エグゼキュータを 使った Btrieve オペレーション のテスト」 ファンクション エグゼキュータについて説明します。Btrieve オペレー ションを 1 度に 1 つずつ実行できます。 u 第 7 章「メンテナンス ユーティリティを 使った Btrieve データ ファイル の操作」 対話型およびコマンドライン形式の Btrieve メンテナンス ユーティリ ティについて説明します。このユーティリティを使用すると、 MicroKernel データ ファイルを対象に一般的なファイルおよびデータ操 作を実行することができます。 u 第 8 章「メンテナンス ユーティリティを使った Scalable SQL データファ イルの操作」 SQL Interface に対応したメンテナンス ユーティリティ(SQLUTIL)に ついて説明します。これは、リレーショナル データ ファイルを対象に した一般的なファイルおよびデータ操作の実行を可能にするコマンドラ イン ユーティリティです。 xii Pervasive.SQL User’s Guide u 第 9 章「SQLScope を使った SQL ステートメントの実行」 Win16 に対応した対話型の SQL スクリプト ファイル エディタ/ハンド ラである SQLScope について説明します。SQLScope を使用すると、 SQL ステートメントを使ってデータ ファイルのクエリを行い、その結 果を画面に表示することができます。また、SQL スクリプトのイン ポートとエクスポートなどのデータベース管理タスクを実行することも できます。 u 第 10 章「参照整合性(RI)のチェックと修復」 RI ユーティリティについて説明します。このユーティリティを使用す ると、参照制約を含むデータ ファイルの一貫性をチェックすることが できます。 u 第 11 章「MicroKernel データ ファイルの変換」 以前のバージョンの MicroKernel ファイルを v7.0 形式に再構築する方法 について説明します。 u 付録 A「Smart Components の タイプ コード」 各 Smart Components をグループ化し、それぞれのタイプ コードを一覧 表形式で示します。 u 付録 B「ディスクリプション ファイル」 ディスクリプション ファイルについて説明します。このファイルは、 Btrieve メンテナンス ユーティリティとともに使用します。ここでは、 ディスクリプション ファイルを作成する上での規則について説明し、 ディスクリプション ファイルのサンプルを示します。また、ディスク リプション ファイルの各構成要素についても説明します。 なお、本書の巻末には、用語集と本文の索引が用意されています。 本書について xiii 表記の規則 特に指定がない限り、コマンドの構文とコード例には、次の表記規則を適用 します。 大文字と 小文字 コマンドと予約語は、通常大文字で表記します。ただし、特 に指定がない限り、これらのアイテムは、大文字または小文 字で入力するか、あるいは大文字または小文字を混在させる ことが可能です。たとえば、MYPROG、myprog、または MYprog と入力することができます。 [ ] [log_name] のように、角カッコで囲まれた情報は省略可能な 項目を示します。角カッコで囲まれていない項目は、必ず指 定する必要があります。 | [file name | @file name] のように、縦棒で区切られた項目は、 その中のいずれかを選択します。 < > /D=<5|6|7> のように、山カッコで囲まれた情報は、必ず指 定する必要のある項目に対する選択肢を表します。 variable file name のように、斜体で表記された単語は、適切な値と置 き換える必要のある変数を表します。 ... [parameter ...] のように、情報に続く省略記号は、その情報を 繰り返し指定できることを表します。 ::= ::= という記号は、ある項目が別の項目によって定義されてい ることを表します。たとえば、a::=b は、a が b によって定義 されているという意味です。 xiv Pervasive.SQL User’s Guide 第1章 Pervasive.SQL ユーティリティについて Pervasive.SQL は、Pervasive ソフトウェアの MicroKernel データベース エン ジンで構成される総合データベース管理システムです。Pervasive.SQL 7 は、 簡単にインストールが行え、メンテナンスも容易です。また、高パフォーマ ンスで信頼性の高い製品です。本書では、Pervasive.SQL データベースの設 定および管理に使用する、Pervasive.SQL 7 のユーティリティについて説明し ます。 u 1-2 ページの「ユーティリティの概要」 u 1-4 ページの「ファイル システムのセキュリティ」 Pervasive.SQL ユーティリティについて 1-1 ユーティリティの概要 以下の表は、ユーティリティの概要です。 表 1-1 Pervasive.SQL 7のユーティリティ概要 ユーティリティ セットアップ プラット フォーム 機能概要 Win16、Win32、 Pervasive クライアントとサーバ OS/2 コンポーネントに対しての設定を (サーバ版のみ) 行います。 対象サーバまたは ワークステーション Windows NT Server、 NetWare Server Win16 版、Win32 版は Windows 9x、Windows NT Workstation モニタ Win16、Win32、 サーバ エンジンの動作をモニタし Windows NT Server、 OS/2 ます。データベースの管理および NLM 以外のプラット (サーバ版のみ) プログラム診断に有効です。 フォーム上の Netware Server ファンクション エグゼキュータ Win16、OS/2 Btrieve のオペレーションを実行し Windows NT Server、 (サーバ版のみ) ます。Btrieve の動作の設定、また NetWare Server はアプリケーションのテストおよ Win16 版は Windows 9x、 びデバッグを行います。 Windows NT Workstation Btrieve メンテナンス DOS、NLM、 Win16、Win32、 OS/2 (サーバ版のみ) データのインポートおよびエクス Windows NT Server、 NetWare Server ポートなど、Btrieve の一般的な ファイルとデータの操作を行いま コマンドライン版、 す。 Win32 版は Windows 9x、 Windows NT Workstation Scalable SQL メンテナンス Win32、NLM データのインポートおよびエクス Windows NT Server、 ポートなど、SQL インタフェース NetWare Server の一般的なファイルとデータの操 作を行います。 コマンドライン版は Windows 9x、Windows NT Workstation SQLScope Win16、Win32 SQL ステートメントを対話型で実 Windows NT Server、 NetWare Server 行します。 Windows 9x、Windows NT Workstation RI ユーティリティ NLM のみ 1-2 Pervasive.SQL User’s Guide 名前付きデータベースに対する RI NetWare Server のみ 制約の確認および一覧表示を行い ます。 表 1-1 ユーティリティ リビルド ビュー変換 DDF Ease Pervasive.SQL 7のユーティリティ概要 プラット フォーム 機能概要 対象サーバまたは ワークステーション Win16、Win32、 以前のバージョンの MicroKernel OS/2 ファイルを、バージョン 7.0 (サーバ版のみ)、フォーマットのファイルに変換し NLM ます。 Win32 Win32 Scalable SQL 3.x のビューを、 Scalable SQL 4.x のビューに移行 します。 Windows NT Server、 NetWare Server Win32 版は Windows 9x、 Windows NT Workstation Windows NT Server Win32 版は Windows 9x、 Windows NT Workstation データ辞書ファイル(DDF)およ Windows NT Server、 びデータベース ファイルの作成、 NetWare Server メンテナンスを行ないます。 Windows 9x、Windows NT Workstation Win16、Win32 ユーザ カウント アドミニストレータ Pervasive Software から取得した Windows NT Server、 ソフトウェア キーの増加に応じて NetWare Server Pervasive.SQL のユーザ数を増加 します。このユーティリティにつ いては、『Getting Started with Pervasive.SQL(サーバ版)』で説 明します。 InstallScout インストール前は、システムの ネットワーク通信要件を満たすよ うにします。インストール後は、 新しいソフトウェアが正しく動作 するようにします。詳細について は、InstallScout のヘルプ ファイ ル(INSSCT.HLP)を参照してく ださい。 Windows NT Server、 NetWare Server トラブルシューティング ユーティ リティです。コンポーネントの解 析、システム テストの実行、およ びレジストリと .INI ファイルの設 定の表示を行います。 このユーティリティについては、 『Getting Started with Pervasive.SQL』で説明します。 Windows NT Server、 NetWare Server SmartScout Win16、Win32 Win16、Win32 Windows 9x、Windows NT Workstation Windows 9x、Windows NT Workstation Pervasive.SQL ユーティリティについて 1-3 ファイル システムのセキュリティ Pervasive.SQL エンジンは、固有のオペレーティングシステムによって定義 されたファイル システム(NTFS および Novell の NSS など)のセキュリ ティに準拠します。 1-4 Pervasive.SQL User’s Guide 第2章 コンポーネント アーキテクチャ 本章では、以下の項目について説明します。 u 2-2 ページの「Smart Components」 u 2-3 ページの「コンポーネントの ID」 u 2-4 ページの「コンポーネント固有の名前付け」 u 2-6 ページの「ダイナミック バインディング」 u 2-7 ページの「Pervasive.SQL イベント ログの記録」 u 2-9 ページの「エラー コードの説明」 u 2-9 ページの「ロード エラーの診断」 コンポーネント アーキテクチャ 2-1 Smart Components Pervasive.SQL 7 では、Smart Components と呼ばれる新しいアーキテクチャの コンポーネントを利用できます。これを使用すると、インストールの効率お よびランタイムでの信頼性が向上します。また、アプリケーションのトラブ ルシューティングも行いやすくなります。 以前のバージョンの Pervasive ソフトウェア リリースでは、以下の問題点が 発生しています。 u 新しいアプリケーション(古いクライアント リクエスタ コンポーネン トを使用)をインストールすると、共有ロケーションにある新しいリク エスタ コンポーネントが上書きされます。このため、インストール後 に古いアプリケーションを起動するとエラーが発生します。 u 新しいワークステーション エンジンをインストールすると、既存のク ライアント リクエスタとの互換性がなくなります。そのため、既存の クライアント リクエスタによって古いエンジンがロードされ、新しい アプリケーションに必要な機能が提供されません。 u インストールされているコンポーネントの機能、バージョン、パッチ レベルの確認が困難です。 u 特にクライアント/サーバ オペレーションで、ランタイムのオペレー ション エラーの根本的な原因を特定するのが困難です。 Smart Components のアーキテクチャは、以下の機能と利点を提供すること で、上記の問題を改善できるように設計されています。 u コンポーネントの ID。コンポーネントの機能、バージョン、パッチ レ ベルが簡単に識別できるので、問題解決に役立ちます。 u コンポーネント固有の名前付け。コンポーネントには、リリース単位に 固有のファイル名が付けられています。このため、更新したバージョン のコンポーネントによって、以前のバージョンが上書きされることはあ りません。Pervasive のアップグレードを行っても、既存の Pervasive ベースのアプリケーションに障害は発生しません。 u ダイナミック バインディング。Pervasive.SQL では、プログラム ファイ ルの固定したセットを、あらかじめメモリにロードしません。あるコン ポーネントが特に別のコンポーネントの機能、バージョン、およびパッ チ レベルを必要とする場合のみ、それが従属コンポーネントとして ロードされます。互換性のないコンポーネントが誤ってロードされるこ とがないため、バージョンの違いによる障害が発生しなくなります。 u Pervasive.SQL イベント ログの記録。すべてのコンポーネントから、エ ラーとメッセージが集中管理ログに記録されるため、トラブルシュー ティングの負担が軽減します。 2-2 Pervasive.SQL User’s Guide u エラー コードの説明。下位コンポーネントでのエラー状態は、上位コ ンポーネントのステータス コードの内部に隠されるのではなく、 Pervasive.SQL イベント ログに記録されるようになりました。エラーの 根本的な原因を、よりすばやく特定できるので、トラブルシューティン グが行いやすくなります。 コンポーネントの ID 各コンポーネントには、固有の埋め込みコンポーネント ID が含まれていま す。コンポーネント ID は、以下の情報を含む文字列です。 u 対象となるオぺレーティング システム u 機能 u 機能レベル u リビジョン レベル u ビルド サイト u ビルド番号 u タイムスタンプ u チェックサム Pervasive Software カスタマー サポートの担当者は、コンポーネントのファ イル イメージを参照してコンポーネント ID を特定し、正しいコンポーネン トであるかどうかを確認します。 コンポーネント アーキテクチャ 2-3 コンポーネント固有の名前付け Pervasive.SQL の各コンポーネントには、プラットフォーム、タイプ、機能 レベルを表す、新しい固有の名前が付いています。今後のコンポーネントの 各リリース(パッチも含みます)にも、若干異なるファイル名が付くので、 同一機能のコンポーネントの 2 つのリリースが同じファイル名になることは ありません。 この特徴により、ファイルの機能を正確に識別できます。また、新しいバー ジョンのインストール時または以前のバージョンのアンインストール時に、 異なるバージョン間のファイルが相互に上書きされることもありません。 コンポーネントには、次のように定義された方式で名前が付けられます。長 いファイル名をサポートしていないシステム(Windows 3.1 など)との互換 性を保つために、すべてのコンポーネント名は 8.3 ファイル名規約に準拠し ています。最初の 2 文字は対象となるランタイム プラットフォームを示し ます。次の 3 文字は、コンポーネントの機能、つまりコンポーネントのタイ プを示します。6 番目の文字は、機能レベル(16 進数で 1 ∼ F)を示し、最 後の 2 文字は機能のリビジョン(16 進数で 00 ∼ FF)を示します。 W3MIF100.DLL プラットフォーム タイプ 機能レベル リビジョン 機能レベルは、コンポーネントのバージョンを定義します。Pervasive.SQL の最初のリリースを 1 として始まります。リビジョン レベルは、機能レベ ルごとに 0 から始まります。機能レベルが上がるたびに、リビジョン レベ ルは 0 にリセットされます。リビジョン レベルは、コンポーネントのパッ チまたは正式リリースに変更が発生するごとに数が大きくなります。以下 に、プラットフォーム コードと、コンポーネント タイプ コードの一例を示 します。 表 2-1 プラットフォームコード プラットフォーム コード Windows 3.1、Windows for Workgroups (Win16) W1 拡張 Windows(32 ビット Watcom Extender) W2 Windows 95、Windows NT (Win32) W3 Windows 9x W9 Windows NT WT 2-4 Pervasive.SQL User’s Guide 表 2-1 プラットフォームコード プラットフォーム コード NetWare 3.x、NetWare4.x NW OS/2(サーバ版のみ) (32 ビット) O3 表 2-2 コンポーネント タイプ コード1 コンポーネント タイプ コード Btrieve インタフェース DLL BIF ネットワーク サービス レイヤ NSL MicroKernel インタフェース DLL MIF SQL インタフェース DLL SIF 1 この表は、コンポーネント タイプの一例です。すべてのコンポーネント タイプ コードについては、付録 A「Smart Components の タイプ コード」を参照してください。 コンポーネント アーキテクチャ 2-5 ダイナミック バインディング アップストリーム コンポーネントでダウンストリーム コンポーネントの機 能が必要な場合、ファイル名を直接指定してロードせずに、必要な機能とリ ビジョンを指定できるようになりました。アップストリーム コンポーネン トはダウンストリーム コンポーネントよりも先にロードされます。例えば、 アプリケショーンは先に Betrieve インタフェース コンポーネント、つまり .BIF をロードします。次に、.BIF によって、.MIF ファイルつまり MicroKernel インタフェース モジュールがロードされます。この例では、 .BIF がアップストリーム コンポーネント、.MIF がダウンストリーム コン ポーネントになります。 アップストリーム コンポーネントは、Abstract OS Services DLL(Services DLL) と呼ばれる新しいコンポーネントの助けを借りて、必要なダウンストリーム コンポーネントをロードします。アップストリーム コンポーネントでは、 必要なダウンストリーム コンポーネントのタイプと最低限の機能レベルを 指定する、バインディング規則を Services DLL に指定します。このバイン ディング規則に基づいて、Services DLL はファイル名のテンプレートを組み 立て、少なくとも必要な機能を提供することのできるファイルを検索しま す。目的のファイルが見つかると、そのファイルのフルパス名が呼出し元の コンポーネントに返され、呼出し元のコンポーネントでは指定されたダウン ストリーム コンポーネントをロードします。 ダウンストリーム コンポーネントを検索するとき、Services DLL はまず、 PERVASIVE_PATH 環境変数に指定されたディレクトリが最初に検索されま す。PERVASIVE_PATH 環境変数が指定されていない場合、または必要なコ ンポーネントが見つからない場合は、プラットフォームのデフォルト パス を検索します(OS/2 の場合、LIBPATH は検索しません) 。 注意 Services DLL は、Glue DLL および初期 Services DLL を検索しません。これらの DLL はプラットフォームのデフォルト パスを使用して、オペレーティング システムに よって検出されます。 Services DLL では、指定された条件を満たすコンポーネントが最初に見つ かったディレクトリで検索を停止し、そのディレクトリに存在するコンポー ネントの中で、最もリビジョンの高いものを返すという検索アルゴリズムが 採用されています。 例えば、特定のコンポーネントで W1MIF101.DLL 以降のコンポーネントが 必要な場合は、Services DLL では W1MIF1xx.DLL のインスタンスが見つか るまで検索を続けます。ここで xx は、01 以上のリビジョンを意味します。 次にそのディレクトリから、xx 値が最大の W1MIF1xx.DLL のインスタンス を検索し、このファイル名を呼出し元のコンポーネントに返します。例え ば、W1MIF101.DLL と MIF102.DLL がディレクトリに存在する場合は、 W1MIF102.DLL が返されます。検索パスの後にある別のディレクトリに W1MIF103.DLL というインスタンスが存在しても、このファイル名は検索 されません。 2-6 Pervasive.SQL User’s Guide Pervasive.SQL イベント ログの記録 Pervasive.SQL 7 のリリースとともに、MicroKernel メッセージ ログは、集中 管理イベント ログに変わりました。すべての Pervasive.SQL 7 以降のコン ポーネントでは、ステータスとエラー メッセージを同じログ ファイルに書 き込みます。また、同じコンピュータ上で複数の Pervasive ベースのアプリ ケーションが実行されている場合は、1 つのイベント ログを共有します。 PVSW.LOG という名前のイベント ログは、Pervasive ベースのアプリケー ションを実行している各コンピュータの Windows ルート ディレクトリに保 存されます。この場所の変更またはカスタマイズを行うことはできません。 以下の表の C: は、オペレーティング システムがインストールされているド ライブを示します。 プラットフォーム イベント ログの場所 Windows 9x、Windows 3.1x C:¥WINDOWS Windows NT C:¥WINNT NetWare SYS:SYSTEM OS/2(サーバ版のみ) C:¥OS2 構文 イベント ログは、以下の構文説明に準拠する ASCII テキスト メッセージか ら構成されます。 表 2-3 フィールド イベント ログのフィールド 長さ(バイト単位) 内容 Date 10 Time 8 Componet Process Process Name mm/dd/yyyy 形式の自動日付スタンプ hh:mm:ss 形式の自動時刻スタンプ 15 エラーを返したコンポーネントのファイル名(拡張子を除い たファイル名のみ) 8 コンポーネントのインスタンス ID(コンポーネントのプロセ ス ID または NetWare のスレッド グループ ID) 最大 15 Computer Name 最大 15 コンポーネントのパスと名前。16 文字目以降は切り捨てられ ます。 プロセスのホストとなるコンピュータに割り当てられている 名前。16 文字目以降は切り捨てられます。 コンポーネント アーキテクチャ 2-7 表 2-3 イベント ログのフィールド フィールド 長さ(バイト単位) 内容 Type メッセージの種類を表す 1 文字。I は情報、W は警告、E は エラーを表します。 1 Category 最大 10 コンポーネント固有のテキスト フィールド。必ずしもこの フィールドに値が含まれるとはかぎりません。 Msg ID 最大 8 数値によるメッセージ ID。呼出し元のコンポーネントに関連 付けられたリソース ファイル内の、メッセージ文字列に対応 しています。 Message 最大 1,024 メッセージ テキスト。呼出し元のコンポーネントに関連付け られたリソースから取得された文字列、または呼出し元のコ ンポーネントから直接渡された文字列のいずれかです。 エントリの後に、標準 ASCII 16 進数フォーマットのバイナリ データが続く ことがあります。バイナリ データの長さに制限はありません。 エントリの例 以下に、イベント ログに記録されるデータの一例を示します。 Date Time Component Process Process Name 11-04-1997 14:01:05 NTMKDE 000000DD W3DBSMGR.EXE Computer Name Type Category LABSERVER I 2-8 Pervasive.SQL User’s Guide Msg ID Message MicroKernel はデフォルトの設定を使用しています。 エラー コードの説明 以前の Btrieve および SQL インタフェースのリリースでは、下層コンポーネ ントのエラーコードが、上層コンポーネントによって返されるエラーコード の中に包括されてしまうことがありました。この結果、1 つのエラーコード から考えられる根本原因の範囲が広くなりすぎるため、トラブルシューティ ングが困難な場合がありました。 Pervasive.SQL 7 では、ほとんどの最上層レベルのコンポーネントが、下層コ ンポーネントのエラーコードをそのまま渡すように再設計されています。こ のため、エラーの実際の原因が、呼出し元のアプリケーション ログファイ ルの中で明らかに特定できるようになりました。 これまでのようにエラーコードから考えられる根本原因の範囲が広すぎる場 合は、Pervasive.SQL のイベント ログ内の情報を使って、エラーの根本原因 を特定できます。 ロード エラーの診断 Pervasive.SQL では、モジュールのロード エラーの診断で使用できる以下の 種類の情報を提供します。 u u Component Name ステータス コード。特定のステータス コードの詳細については、 『Status Codes and Messages』を参照してください。 イベント ログ。Pervasive.SQL イベント ログで以下の情報を検索する と、特定のモジュールのロード エラーの詳細情報を取得できます。 ロード エラーを受け取ったモジュールの論理名あるいは物理名。使用され る論理名は以下のとおりです。 ServicesIfc - Abstract OS Services BtrvIfc - Btrieve MKDEIfc - MicroKernel SSQLIfc - Scalable SQL 呼出し元モジュールがバインディング規則を使用してコンポーネントを ロードする場合に、物理名がログに記録されます。例えば、W3BIF102 は 物理名です。 Type 以下に示すロード エラーの種類。 E (エラー)−モジュールが見つからないか、モジュールをロードすると きにオペレーティング システム固有のエラーが発生しました。 W (警告)−シンボルが見つからないか、モジュールによってエクスポー トされていません。 コンポーネント アーキテクチャ 2-9 Message メッセージは、モジュールのロード エラーの種類によって異なります。モ ジュールが見つからなかった場合は、イベント ログにダウンストリーム コ ンポーネントを指定したバインディング規則が記録されます。オペレー ティング システム固有のエラーが発生した場合は、イベント ログにオペ レーティング システムのエラーが記録されます。シンボルが見つからな かった場合、またはエクスポートされなかった場合は、イベント ログにそ のシンボルが記録されます。 u オンスクリーン エラー。イベント ログは、Services DLL がロードされる まで機能しません。このため、Services DLL のバインド中にロード エ ラーが発生した場合は、イベント ログにこのエラーは記録されません。 この場合は、オンスクリーン エラーが表示されます。 画面上にモジュールのロード エラーを表示するように Services DLL を 設定するには、PVSW_DISP_LOAD_ERRS 環境変数を以下のように設定 する必要があります。 PVSW_DISP_LOAD_ERRS=AIF この環境変数は、モジュールのロード エラーを診断するときにのみ設 定します。それ以外の場合には設定しないでください。 エラーを診断するには、この環境変数を上記の方法で設定し、オペレー ションを実行します。ロード エラーが発生すると、画面上にエラーの 情報を含むメッセージ ボックスが表示されます。 2-10 Pervasive.SQL User’s Guide 第3章 セットアップ ユーティリティを 使ったコンポーネントの環境設定 この章では以下の項目について説明します。 u 3-2 ページの「セットアップ ユーティリティの概要」 u 3-3 ページの「セットアップ ユーティリティの注意事項」 u 3-7 ページの「セットアップ ユーティリティのメイン ウィンドウ」 クライアント側のコンポーネントについて: u 3-24 ページの「Windows 3.x、Windows 9x、および Windows NT に対応し た Scalable SQL リクエスタのオプション」 u 3-29 ページの「DBNames インタフェースのオプション」 u 3-32 ページの「Btrieve リクエスタのオプション」 u 3-33 ページの「MicroKernel ルータのオプション」 u 3-35 ページの「Communications リクエスタの設定」 サーバおよびワークステーションのコンポーネントについて: u 3-9 ページの「Scalable SQL エンジンのオプション」 u 3-20 ページの「Scalable SQL 通信マネージャのオプション」 u 3-37 ページの「MicroKernel Database Engine のオプション」 u 3-58 ページの「Btrieve 通信マネージャのオプション」 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-1 セットアップ ユーティリティの概要 セットアップ ユーティリティは、Pervasive.SQL 7 ワークステーション、ク ライアント、およびサーバのコンポーネントの設定を行います。 これらのコンポーネントの設定はオプションです。設定を変更しないと、そ れぞれのコンポーネントはデフォルトの設定を使ってロードされます。セッ トアップ ユーティリティは、Pervasive.SQL 7 以降でのみ動作します。 以下の場合に、セットアップ ユーティリティを使用できます。 u システムまたはPervasive.SQLのアプリケーションの設定を調整する必要 がある場合。推奨値については、アプリケーションのマニュアルを参照 してください。複数のアプリケーションを同時に実行している場合は、 推奨値を合計します。また、複数のアプリケーションを連続して実行す る場合は、最大の推奨値を使用してください。 u 必要以上のメモリを使用せずに、必要な Pervasive.SQL のサービスを利用 できるように設定を最適化する場合(記述されているメモリ要件は、コ ンピュータ リソースを最適化するための推奨値です) 。 変更を有効にするには、Pervasive.SQL コンポーネントをいったんシャット ダウンして再起動する必要があります。詳細については、 『Getting Started with Pervasive.SQL』を参照してください。 3-2 Pervasive.SQL User’s Guide セットアップ ユーティリティの注意事項 ここでは、セットアップ ユーティリティを理解する上で役に立つ情報につ いて説明します。以下のセクションで構成されています。 u 「他の環境との接続」 u 「Pervasive.SQL を分散型データベース用に設定」 u 3-4 ページの「パフォーマンスについて」 u 3-4 ページの「アーカイブ ロギングと、トランザクション一貫性保守」 u 3-5 ページの「設定パラメータについて」 他の環境との接続 セットアップ ユーティリティは、サーバ製品またはワークステーション製 品のどちらを使用しているかにより、ローカル環境およびリモート環境の両 方を設定できます。セットアップ ユーティリティを起動すると、その時点 でローカル環境を設定するための準備は整っています。 リモート環境を設定するには、 [接続]ボタンをクリックしてサーバの名前 を入力します。リモートサーバとの接続を解除するには、 [切断]ボタンを クリックします。リモート環境と接続している場合は、サーバ コンポーネ ントのみの表示と変更を行うことができます。Windows NT Server をクライ アントおよびサーバとして使用しているときは、NT クライアントは、サー バでローカルにのみ設定できます。 Pervasive.SQL を分散型データベース用に設定 データ辞書が 1 つのサーバ上にあり、1 つ以上のファイルがリモート サーバ 上にあるような分散環境で、Pervasive.SQL が動作するように設定すること もできます。このような環境で正常なオペレーションを実行するには、以下 の要件を満たす必要があります。 u 制限のない読み書きアクセスを行う場合、Scalable SQL サーバはバー ジョン 4 以降、Btrieve サーバはバージョン 7 以降でなければなりませ ん。それ以外の場合は、リードオンリー トランザクションしか実行で きません(例えば、Scalable SQL 3.x または Btrieve 6.x が動作しているよ うなリモート サーバのデータにアクセスする場合) 。 u エンジンのユーザ名は同じパスワードを持ち、すべてのサーバで有効で なければなりません。プライマリ サーバでは、ユーザには管理者権限 が割り当てられている必要があります。 u Scalable SQL 通信マネージャ コンポーネントの [リモート リクエスト の受付]をオンに設定する必要があります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-3 u Scalable SQL が、データ辞書ファイル(DDF)があるコンピュータおよ びデータ ファイルがあるコンピュータにロードされている必要があり ます。データ ファイルがあるコンピュータ上に Btrieve のみがロードさ れている場合は、ステータス コード 20「MicroKernel または Btrieve リ クエスタが実行されていません」が返されます。この状態を解決するに は、データ ファイルがあるコンピュータ上に Scalable SQL エンジンを ロードしてください。 パフォーマンスについて このセクションでは、パフォーマンスに影響を与える設定の注意事項につい て述べます。 [キャッシュ割当て]のデフォルト設定値は 1,024 KB です。[キャッシュ割 当て]設定を 2,048 KB 以上にすると、パフォーマンスが向上することがあ ります。可能な場合は、同時にアクセスされるすべての Pervasive.SQL デー タ ファイルの合計値、または連続してアクセスされるデータ ファイルの中 で最大のサイズをキャッシュ サイズに設定してください。 アーカイブ ロギングと、トランザクション一貫性保守 セットアップ ユーティリティでは、MicroKernel に書き込まれる 2 つのログ を指定することができます。 u アーカイブ ロギング u トランザクション一貫性保守 アーカイブ ログを使用すると、システム障害またはシステム クラッシュが 発生した場合に、データ ファイルを簡単に復旧できます(BUTIL のロール フォワード機能または Btrieve 対話型メンテナンス ユーティリティを使用し て、最後にバックアップを行った時からシステム クラッシュが発生するま での間にデータ ファイルに対して行われた変更を復旧することができま す) 。 トランザクション一貫性保守のログには、END_TRANSACTION オペレー ションの正常終了ステータスをアプリケーションが受け取ってから MicroKernel に対して発行されたすべてのトランザクション オペレーショ ン、およびデータ ファイルに対してエンジンが書き込んだすべての変更が 記録されます。詳しくは、3-44 ページの「[トランザクション一貫性保守] 」 を参照してください。 これら 2 つのログは、同時に利用されることはありません。アーカイブ ロ グは、ハードウェア エラーまたはファイルの破損が発生した場合に、アー カイブから現在の状態に復旧するために使用します。監査目的のためにも使 用できます。トランザクション ログは、パフォーマンスを向上させ、シス テム クラッシュ時に発行済みのトランザクションが失われないようにする ために使用します。 3-4 Pervasive.SQL User’s Guide アーカイブ ロギングの詳細については、7-58 ページの「アーカイブ ロギン グ」を、またトランザクション一貫性保守については、用語集 44 ページの 「トランザクション一貫性保守」をそれぞれ参照してください。 設定パラメータについて それぞれのオプションには、次のようないくつかのスペックが用意されてい ます。 範囲 設定を行うことのできる有効な値の範囲です。 デフォルト 特に変更しない場合に自動的に割り当てられる値です。 必要メモリの概算 この値は、対象となるオプションを使用するときに必要となるメモリ容量の概 算値を示します。 クライアント このフィールドには、このオプションに対応した Pervasive.SQL クライアント リクエスタのバージョンが一覧表示されます。 このフィールドに[適用外]と表示されている場合は、それがリモート エンジ ンの設定であり、セットアップ ユーティリティを使って、リモート マシンを 対象にこの設定を変更できることを意味します。 このフィールドに[Win32 のみ]と表示されている場合は、Win32 リクエスタ だけがこの設定によって影響を受け、Win32 セットアップ ユーティリティを 使ってこのオプションを変更する必要があることを意味します。 このフィールドに[Win16 のみ]と表示されている場合は、Win16 リクエスタ だけがこの設定によって影響を受け、Win16 セットアップ ユーティリティを 使ってこのオプションを変更する必要があることを意味します。 このフィールドにクライアントの一覧が表示されている場合は、設定が複数の リクエスタのバージョンに適用され、適切なセットアップ ユーティリティを 使って、使用する各クライアントのオプションを変更する必要があることを意 味します。たとえば、Win32 クライアント リクエスタに対する設定を変更する には、Win32 セットアップ ユーティリティを使用します。また、OS/2 クライ アント リクエスタに対する設定を変更するには、OS/2 セットアップ ユーティ リティを使用します。 サーバ、または ワークステーション このフィールドには、Windows NT Server、NetWare Server、Windows 9x、 Windows NT Workstation など、この設定が適用される Pervasive.SQL サーバま たはワークステーションのリストが表示されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-5 以下の表は、3 つのバージョンのセットアップ ユーティリティの機能の概要 です。 表 3-1 Pervasive.SQL Win16 版、Win32 版、および OS/2 版のセットアップ 版、 ユーティリティ セットアップ ユーティリティ 設定可能なコンポーネント 変更箇所 Win32 セットアップ ユーティリティ ローカル コンピュータ の Windows レジストリ ローカル Win32 コンポーネント NT Server コンポーネント (Windows 9x、Windows NT Workstation または Windows (ローカルまたはリモート コンピュータ) NT Server で実行されます ) NetWare Server コンポーネント (リモート コンピュータのみ) Windows レジストリ NetWare Server の BTI.CFG ローカル Win16 コンポーネント ローカル コンピュータ の BTI.INI (Windows 3.x、Windows 9x、 NT Server コンポーネント Windows NT Workstation、お (リモート コンピュータのみ) よび Windows NT Server で実 NetWare Server コンポーネント 行されます ) (リモート コンピュータのみ) Windows NT Server の Windows レジストリ Win16 セットアップ ユーティリティ OS/2 セットアップ ユーティリティ NetWare Server の BTI.CFG ローカル OS/2 コンポーネント OS2.INI(バイナリ) (OS/2 クライアント ワークス NT Server コンポーネント テーションで実行されます) (リモート コンピュータのみ) Windows レジストリ NetWare Server コンポーネント (リモート コンピュータのみ) 3-6 Pervasive.SQL User’s Guide BTI.CFG セットアップ ユーティリティのメイン ウィンドウ 図 3-1 は、ローカル環境を設定する際に表示されるセットアップ ユーティリ ティのメイン ウィンドウです。 図 3-1 セットアップ ユーティリティのメイン ウィンドウ セットアップ ユーティリティを使ったコンポーネントの環境設定 3-7 表 3-2 は、セットアップ ユーティリティのメイン ウィンドウの構成要素の 説明です。 表 3-2 セットアップ ユーティリティのメイン ウィンドウの要素 設定要素 説明 [ターゲット マシン] ローカル環境(Windows 3.x、Windows 9x、Windows NT のクライアン ト、または Windows 9x、Windows NT のワークステーション)を設定 するときは、LOCAL と表示されます。リモート環境を設定するときは、 サーバ名が表示されます。 [コンポーネント] 設定の対象となるコンポーネントのリストを表示します。 注意:コンポーネントがロードされていない場合、または存在しない場 注意: 合は、リストに表示されません。ローカル コンポーネントは、検索パス の場所にインストールされている必要があります。また、リモート コン ポーネントがロードされ、実行中である必要があります。 [カテゴリ] [設定] 現在のコンポーネントに対する設定オプションのカテゴリのリストを表 示します。 現在のカテゴリで変更可能な設定オプションのリストを表示します。 [設定]リストの下には、反転表示したオプションに対するデフォルト の設定および現在の設定が表示されます。設定の最小値と最大値も表示 されます。 [接続 / 切断] リモートサーバとの接続または切断を行います。 [名前付きデータベースの 管理] バウンド データベースを作成できます。Scalable SQL エンジン コン ポーネントを選択した場合にのみ、このボタンが表示されます。 3-8 Pervasive.SQL User’s Guide Scalable SQL エンジンのオプション このセクションでは、カテゴリ順に Scalable SQL エンジンの設定オプション について説明します。 u システム環境設定 u トレースファイル制御 システム環境設定 [システム環境設定]のカテゴリには、以下の 6 種類の設定があります。 [外部プロシージャの有効化] 範囲 デフォルト 必要なメモリ クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation [外部ソートファイルディレクトリ] 範囲 デフォルト 必要なメモリ クライアント エンジン 有効な ディレクトリ パス NetWare: SYS:SYSTEM 適用外 適用外 Windows NT Server、 NetWare Server Windows NT: デフォルトの Windows ディレクトリ Windows 9x、 Windows NT Workstation セットアップ ユーティリティを使ったコンポーネントの環境設定 3-9 この設定では、特定のプロセス中に作成されるテンポラリ ファイルが Scalable SQL エンジンによって格納される場所を指定します。このディレク トリは、Scalable SQL エンジンがアクセスする前に作成されている必要があ ります。また、Scalable SQL エンジン がインストールされているコンピュー タ上になければなりません。 テンポラリ ファイルを保存するディレクトリを作成し、そのディレクトリ を外部ソート ファイルのディレクトリとして指定できます。パスを指定す るときは、以下のいずれかの形式を使用してください。 NetWare 形式 vol:directory Windows NT 形式 drive:directory Scalable SQL エンジンでは、各テンポラリ ファイルにコード名を割り当て、 テンポラリ ファイルを必要とするプロセスが完了すると、それらを自動的 に削除します。このパラメータにパスを入力しなかった場合、Scalable SQL エンジンがインストールされているコンピュータ上のデフォルト ディレク トリにテンポラリ ファイルが保存されます。 [デフォルトの分離レベル] 範囲 デフォルト [カーソル安定度] カーソル安定度 または[排他] 必要なメモリ クライアント エンジン 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation この設定では、Scalable SQL インタフェースに対するエンジンのデフォルト 分離レベル(ロック)を指定することができます。[排他]を指定すると、 デフォルトはファイル レベルの排他ロックになります。トランザクション が完了するまで、排他ロックは解除されません。あるユーザがロックしてい るファイルに、別のユーザがアクセスすることはできません。 [カーソル安 定度]を指定した場合、デフォルトがカーソル安定度によるロックとなり、 アクセスしている行またはページがロックされます。あるユーザがロックし ているページまたはレコードに、別のユーザがアクセスすることはできませ ん。 カーソル安定度によるロックは、バージョン 6.x 以降のデータ ファイルでの み使用できます。 3-10 Pervasive.SQL User’s Guide [通信バッファサイズ] 範囲 デフォルト 必要なメモリ クライアント 4,096 ∼ 32,767 バイト 16,384 バイト 指定した値* 適用外 ワーカ スレッドの 最大数 エンジン Windows NT Server この設定では、サーバで動作している Windows NT アプリケーションおよび Window NT に対応した Scalable SQL エンジン間で転送可能なデータの最大 ブロック長を、バイト単位で指定します。各ワーカ スレッドは、この最大 データ長を格納できるメモリ バッファを割り当てます。ワーカ スレッドと は、リクエストを行うクライアント プロセスに代わって、ファイル オペ レーションを実際に行うプロセスのことです。 アプリケーションが必要とするバイト数より小さな値を設定した場合、実行 時にエラー メッセージが返されます。ただし、必要以上の値を設定しても、 パフォーマンスは向上しません。 [ワーカ スレッド数] 範囲 デフォルト 必要なメモリ クライアント エンジン 2 ∼ 64 スレッド 3 スレッド 適用外 適用外 Windows NT Server Windows 9x、 Windows NT Workstation この設定では、クライアント リクエストを処理するために、Scalable SQL エ ンジンが最初に作成するワーカ スレッド数を指定します。ワーカ スレッド とは、リクエストを行うクライアント プロセスに代わって、実際にファイ ル オペレーションを行うプロセスのことです。 (その後、必要に応じて動的 にワーカ スレッドは追加されます。 ) セットアップ ユーティリティを使ったコンポーネントの環境設定 3-11 [テーブル定義のチェック] 範囲 デフォルト 必要なメモリ クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation この設定では、DDF に保存されているテーブル定義と、実際のデータ ファ イル定義とをチェックするかどうか指定します。DDF とデータ ファイル定 義が一致しないテーブルを対象にクエリを実行しようとすると、ステータス コード 353 が返されます。 [トレースファイル制御] [トレースファイル制御]のカテゴリには、以下の 5 種類の設定があります。 [Scalable SQL ログイン / ログアウト] 範囲 デフォルト 必要なメモリ クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation この設定では、データベースへのログインおよびログアウトをトレース ファイルに記録するかどうかを指定します。このオプションを有効にした場 合は、 [トレース ファイル]オプションを使用して、トレース ファイルを指 定する必要があります。 3-12 Pervasive.SQL User’s Guide [Scalable SQL ログイン失敗] 範囲 デフォルト 必要なメモリ クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation この設定では、失敗したデータベースへのログインをトレース ファイルに 記録するかどうかを指定します。このオプションを有効にした場合は、 [ト レース ファイル]オプションを使用して、トレース ファイルを指定する必 要があります。 [その他すべての Scalable SQL コール] 範囲 デフォルト 必要なメモリ クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation この設定では、すべてのデータ定義およびデータ処理の動作をトレース ファイルに記録するかどうかを指定します。開発者は、このトレース機能を 使用して、アプリケーションをデバッグすることができます。この設定を有 効にした場合は、 [トレース ファイル]オプションを使用して、トレース ファイルを指定する必要があります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-13 [トレース ファイル] 範囲 デフォルト 必要なメモリ 有効なパス NetWare: 適用外 Scalable SQL を起動 したディレクトリ名 + SSQL.LOG クライアント エンジン 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation Windows NT: Scalable SQL を インストールした ディレクトリ名+ SSQL.LOG この設定では、Scalable SQL がトレース情報を書き込むファイルを指定しま す。パスおよびファイル名は有効でなければなりません。 注意 Scalable SQL と MicroKernel Database エンジンの両方に対して、同じトレース ファ イル名を使用しないでください。 [ 名前付きデータベースの管理] 範囲 デフォルト 必要なメモリ クライアント エンジン 適用外 適用外 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation 名前付きデータベースには、ユーザが実際の場所を知らなくても識別できる 論理名が指定されています。データベースに名前を付けるときは、特定の辞 書ディレクトリのパスおよび 1 つ以上のデータ ファイルのパスを、その名 前と関連付けます。データベース名を使用して Scalable SQL エンジンにログ インすると、その名前を使用してデータベースの辞書およびデータ ファイ ルを検索します。名前付きデータベースでは、以下の処理が可能になりま す。 u トリガの定義 u 主キーおよび外部キーの定義 u データベースのバインド u データベースの整合性制限の停止 3-14 Pervasive.SQL User’s Guide [名前付きデータベースの管理 ]機能を使用して、データベースのバインド および名前付けを行うことができます。表 3-3 では、[名前付きデータベー スの管理]ダイアログの項目について説明します。 表 3-3 [名前付きデータベースの管理]ダイアログの要素 要素 説明 [データベース名] 使用可能な名前付きデータベースのリストを表示します。 [辞書の場所] 選択したデータベース名に対する DDF ファイルの場所を表示します。 [整合性の設定] Pervasive.SQL がデータベースで整合性制限(セキュリティ、参照整合 性、およびトリガなど)を適用しているかどうかを表示します。 [バウンド] データベースがバインドされているかどうかを表示します。データ ベースをバインドすると、MicroKernel では、データへのアクセスに使 用する方法にかかわらず、データベースに定義したセキュリティ、参 照整合性(RI)、およびトリガを適用します。 バウンド データベースの詳細については、『Scalable SQL Design Guide』を参照してください。 [データ ファイルの場所] データベースのデータ ファイルの場所を表示します。 [作成] 新しい名前付きデータベースの作成を可能にします。 [修正] 現在のデータベースのプロパティを変更できるようにします。 [削除] DBNAMES.CFG ファイルからデータベース名を削除します。バウンド データベースの場合は、この操作により関連する辞書ファイルも削除 されます。バインドされていないデータベースの場合は、この操作を 行ってもファイルは削除されません。 [バインド] データベースをバウンド データベースにします。 注意:バインドを正常に実行するために、既存のデータベースでは、 他の名前付きデータベースから参照されている辞書またはデータ ファ イルを参照できなくなります。データベースで辞書またはデータ ファ イルを共有している場合は、辞書ファイルを共有しているすべての名 前付きデータベースがアンバインドされている必要があります。 [アンバインド] データベースをアンバウンド データベースにし、各辞書およびデータ ファイルのステータスをアンバインドに変更します。 注意:トリガ、外部キー、外部キーによって参照されている主キーの いずれかが存在する場合は、そのファイルはエンジンによって自動的 にバウンド ファイルとして設定されるため、データベースをアンバイ ンドすることはできますが、一部のファイルはバインドされたまま残 ることもあります。 バウンド データベースの詳細については、『Scalable SQL Design Guide』を参照してください。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-15 表 3-3 [名前付きデータベースの管理]ダイアログの要素 要素 説明 [チェック] DBNAMES.CFG ファイル内のこのデータベースのエントリに、既存の 辞書およびデータ ファイルが正確に反映されているかどうかをチェッ クします。 新しいバウンド データベースの作成 ➤ バウンド データベースを作成するには 1. [セットアップ ユーティリティ]ダイアログで、[名前付きデータベー スの管理]ボタンをクリックします。 [名前付きデータベースの管理]ダイアログが表示されます。 図 3-2 [名前付きデータベースの管理]ダイアログ 2. [作成]ボタンをクリックします。[名前付きデータベースを作成 ]ダ イアログが表示さます。 3-16 Pervasive.SQL User’s Guide 図 3-3 [名前付きデータベースを作成]ダイアログ 3. [データベース名]フィールドにデータベースの名前を入力します。ス ペースを含むデータベース名を指定しないでください。Scalable SQL エ ンジンでは、スペースの位置までの名前を表示するので、My DB とい う名前を入力すると、My と表示されます。 4. デフォルトでは、 [整合性の設定]は有効になっています。この設定で は、データベースがバインドされているかどうかにかかわらず、 Pervasive.SQL によってデータベースに整合性制限(セキュリティ、参 照整合性、トリガなど)が適用されるかどうかを指定します。 通常、 [整合性の設定]を無効にすることはお勧めしません。ただし、 大量データのロードを容易にするために、整合性制限を停止した方が良 い場合もあります。 5. デフォルトでは、データベースのバインドを決定する[バウンド]設定 は有効になっています。バウンド データベースを作成すると、適切な 辞書ファイルが作成されます。 注意 辞書ファイルが既に存在するデータベースでは、バウンド データベースは作成できま せん。既存の辞書ファイルがある場合は、アンバウンド データベースを作成してか ら、[名前付きデータベースの管理]ダイアログの[バインド ]ボタンを使用します (図 3-2 を参照してください)。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-17 データベースの辞書の場所を[辞書の場所]フィールドに指定します。 この場所は、接続しているサーバ上になければなりません。 6. NetWare の場合は、vol:¥path の形式でパスを入力します。Windows NT の場合は、drive:¥path の形式でパスを入力します(ここで、 drive にはローカル ドライブ文字を入力します) 。 7. [データ ファイルの場所]フィールドにデータ ファイルの場所を指定し ます。 [追加]をクリックし、[場所]ポップアップ ダイアログに場所 を入力します。 このサーバ上のデータ ファイルへのパスを指定する場合は、 [辞書の場 所]フィールドに指定したパスを指定します。他のサーバ上のデータ ファイルのパスを入力する場合は、フルパス名を指定します。NetWare の場合は、¥¥ サーバ ¥ ボリュームラベル 1¥ パス の形式(UNC フォー マット) 、またはサーバ ¥ ボリュームラベル 1:¥ パスの形式で指定しま す。 Windows NT の場合は、 ¥¥ サーバ ¥ 共有名 ¥ パスの形式でパスを指定 します。 特定のデータ ファイルの場所を除外する場合は、 [削除]をクリックし てください。 [OK]をクリックして、名前付きデータベースを作成し、ダイアログ を閉じます。または、 [キャンセル]をクリックして、変更を保存せず にダイアログを閉じます。 8. 新規作成された名前付きデータベース ファイルおよびそのデータ ファ イルの場所は、 [名前付きデータベースの管理]ダイアログに表示され ます。名前付きデータベースの作成後、バインドしなかった場合は、 [バインド]ボタンをクリックしてバインドすることができます。 名前付きデータベースの修正 ➤ 名前付きデータベースを修正するには 1. [データベース名]リスト内のデータベース名を選択してから[修正 ] をクリックするか、データベース名をダブルクリックします。以下のダ イアログが表示されます。 3-18 Pervasive.SQL User’s Guide 図 3-4 [データベース名の修正]ダイアログ 2. データ ファイルの場所を追加または修正します。 注意 バウンド データベース、またはトリガや外部キーを持つデータベースの[データベー ス名]および[辞書の場所]は修正できません。 3. [OK ]をクリックして変更を保存します。または、[キャンセル]をク リックして変更を保存せずにダイアログを閉じます。 名前付きデータベースの削除 ➤ 名前付きデータベースを削除するには u [データベース名]リストでデータベース名を選択し、 [削除]をクリッ クします。選択した名前付きデータベースが、データベース名のリスト から削除されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-19 Scalable SQL 通信マネージャのオプション ここでは、Pervasive.SQL サーバ エンジンに対しての Scalable SQL 通信マ ネージャの環境設定オプションについて説明します。 サーバ通信環境設定 サーバ通信環境設定のカテゴリには、以下に示す 7 つの設定が含まれます。 [セッション数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 4,096 セッション 15 セッション Windows NT の場 合、セッション あたり 32 バイト 適用外 Windows NT と Netware のみ NetWare の場合、 適用外 このオプションは、同時にサーバ エンジンにアクセスすることのできる ネットワーク接続の最大数を指定します。必要以上の値を指定してもパ フォーマンスを向上させることはできません。1 つのワークステーション上 で複数の Scalable SQL アプリケーションを実行する場合、それぞれのアプリ ケーションが Scalable SQL エンジンに対する 1 つまたは複数のセッションを 生成することがあります。 NetWare のみ:このオプションで使用するメモリ容量は、[受信パケットサ イズ]オプションで必要となるメモリに強い影響を与えます。これらの 2 つ のオプションは連動しています。 通信セッション数は Scalable SQL エンジンへのログイン数と関連しています が、これらは同じではありません。Scalable SQL エンジンへのログインは常 に新しい Scalable SQL エンジン セッションを生成します。ただし、新しい 通信セッションが生成されるかどうかはログインされたデータベースのロ ケーションによります。同じタスクが同一サーバ上のデータベースにログイ ンする場合、このタスクは 2 つの異なる Scalable SQL エンジン セッション を持ちますが、通信セッションは 1 つだけです。これは、リクエスタが 2 番 目のログインに対してネットワーク通信を再利用するためです。 3-20 Pervasive.SQL User’s Guide [通信バッファ サイズ] 範囲 デフォルト Windows NT の 場合、4,096 ∼ 32,767 バイト 16,384 バイト 必要メモリの概算 クライアント [通信バッファ サ 適用外 イズ]*([通信ス レッド数]+ 1) + 385 バイト サーバ WindowsNT Server、 NetWare Server NetWare の場合、 512 ∼ 65,116 バイト このオプションは、Scalable SQL エンジン通信レイヤがリモート クライアン トからのデータベース リクエストに対して割り当てるバッファのサイズ (バイト単位)を指定します。この値は、Scalable SQL リクエスタに対する 最大のデータ長パラメータと少なくとも同じ大きさでなければなりません。 注意 システム管理者:このオプションの最適値を得るには、使用する Pervasive.SQL アプ リケーションのマニュアルを参照してください。 アプリケーション開発者:開発するアプリケーションがデフォルトを超える通信バッ ファを必要とする場合は、そのアプリケーションのマニュアルに最適なサイズを記述 してください。 [通信スレッド数] 範囲 デフォルト 必要メモリの概算 クライアント サーバ Windows NT: 2 ∼ 64 スレッド 3 スレッド 適用外 適用外 すべて NetWare: 1 ∼ 200 スレッド このオプションは、クライアント リクエストを処理するために、Scalable SQL エンジン通信マネージャが生成するワーカ スレッド数を指定します。 通信スレッドとは、リクエストを行うクライアント プロセスに代わって実 際にファイル操作を行うサーバ プロセスのことです。指定する数は実際の 通信量によって異なります。それほど通信量が多くない場合は、デフォルト よりも小さな値を指定することもできます。一方、同時に使われる通信の量 が多い場合は、ワークステーションあたり 1 つから 64 のスレッドを使用し ます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-21 [リモート リクエストの受付] 範囲 デフォルト 必要メモリの概算 クライアント サーバ オンまたはオフ オン 適用外 適用外 Windows NT このオプションは Windows NT に対応した Scalable SQL エンジンだけで使用 され、NetWare に対応した Scalable SQL エンジンでは無視されます。 このオプションは、通信マネージャがリモート サーバおよびワークステー ションからのリクエストを受け付けるかどうかを指定します。このオプショ ンをオンにすると、通信マネージャはそれが存在することをネットワーク上 に通知します。 [サポートプロトコル] 範囲 デフォルト 必要メモリの 概算 [TCP/IP]または [TCP/IP](このプロトコルがク 適用外 [SPXII] ライアントとサーバの両方で使 用できる場合)。デフォルトの設 定で両方のプロトコルが有効に なっている場合は、まず TCP/IP の使用が試みられます。TCP/IP が使用できない場合は、SPXII が 使用されます。 クライアント サーバ 適用外 Windows NT このオプションは通信マネージャで使用するプロトコルを指定します。両方 のプロトコルを指定すると、まず TCP/IP の使用が試みられます。TCP/IP が 使用できない場合は、SPXII が使用されます。 [リモート読込みバッファ サイズ] 範囲 デフォルト 2 ∼ 32,767 バイト 4,096 バイト 必要メモリの概算 クライアント サーバ 現在アクティブな各リモート セッションに割り当てられてい るメモリ容量 適用外 Windows NT このオプションは Windows NT に対応した Scalable SQL エンジンだけで使用 され、NetWare に対応した Scalable SQL エンジンでは無視されます。 このオプションは、Scalable SQL エンジンがオペレーティング システムの通 信レイヤから受け取ったパケットを読み込むためのバッファのサイズを指定 します。この値はバイト単位で指定します。入力した値は、エンジンがバッ 3-22 Pervasive.SQL User’s Guide ファを割り当てるときに、システム ページ サイズ(Intel のプラットフォー ムでは 4KB)の倍数に最も近い値に切り上げられます。 このオプションには、 [通信バッファ サイズ]+システムのオーバーヘッド に対する割り当て量(約 400 バイト)に等しい値を設定してください。ただ し、このオプションにデフォルトを超える値を設定すると、システムはアク ティブな各リモート クライアント接続に対して指定されたサイズのバッ ファを割り当てるため、メモリ ペナルティが発生する点に注意してくださ い。たとえば、アクティブなリモート クライアントが 100 あり、バッファ サイズに 4KB を設定した場合、システムでは 400KB のメモリを割り当てま す。一方、バッファ サイズを 16KB に設定した場合は 1600KB のメモリを割 り当てます。 [受信パケットサイズ] 範囲 デフォルト 必要メモリの概算 クライアン ト サーバ 532 ∼ 4,096 バイト 1,500 バイト 次の式を参照 適用外 NetWare 必要メモリの概算:このオプションでは、必要メモリは次の計算式を使っ て概算します。 受信パケットの数 * [受信パケットサイズ] ここで、 「受信パケットの数」= 次の値のうち最大のもの: 45 または(2 * [セッション数] )または {[セッション数]*( [通信バッファ サイズ]/[受信パケットサイズ] )+ 1} このオプションは NetWare に対応した Scalable SQL エンジンだけで使用さ れ、Windows NT に対応した Scalable SQL エンジンでは無視されます。 このオプションは、通信マネージャが受け取る個別のネットワーク パケッ トのサイズを指定します。 [受信パケットサイズ]のデフォルト値は使用す るネットワーク カードやその他のハードウェアの性能によって変わります。 イーサネット トポロジ上で Windows NT または Windows 9x に対応した Scalable SQL リクエスタを使用している場合は、少なくともこのオプション のデフォルト値を設定してください。トークン リング トポロジの場合は、 4,096 にバイトを設定してください。このオプションにあまりにも小さな値 を設定すると、ワークステーションがハングしたり、ステータス コード 95 (セッションは既に無効になっています)が返される原因になります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-23 Windows 3.x、 、Windows 9x、および 、および Windows NT に対応した Scalable SQL リクエスタのオプション ここでは、Windows、Windows9x、および Windows NT に対応した Scalable SQL リクエスタの環境設定オプションについて説明します。 アクセス制御 アクセス制御カテゴリには、以下で説明される 10 種類の設定が含まれます。 [ターゲット エンジン] 範囲 デフォルト 必要メモリの概算 クライアント エンジン [ワークステーショ サーバ 適用外 ンのみ]または (サーバ エンジン [ローカル サーバ のデフォルト) のみ] ワークステーショ ンのみ(ワークス テーション エンジ ンのデフォルト) Win32 のみ Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、複数のエンジンがローカル マシン上で使用可能なとき にどの接続を使用するかを指定します。アプリケーションがローカル ファ イルへのアクセスを試みるとき、Scalable SQL インタフェースでは[ター ゲット エンジン]オプションの設定値をチェックします。このオプション に[ワークステーションのみ]が設定されていると、Scalable SQL インタ フェースはリクエストをワークステーション エンジンに渡し、ワークス テーションではこのリクエストを処理して適切な情報を返します。このオプ ションに[ローカルサーバのみ]が設定されていると、Scalable SQL インタ フェースはリクエストをローカル サーバ エンジンに渡します。Scalable SQL インタフェースがターゲット エンジンを検出できない場合は、次のいずれ かのステータス コードが返されます。 u [リモートの使用]がオンの場合はステータス コード 2103 u [リモートの使用]がオフの場合はステータス コード 802 3-24 Pervasive.SQL User’s Guide [ローカルの使用] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL リクエスタがローカル ワークステーション またはローカル サーバ エンジン(Windows NT の場合)を使ってファイルに アクセスするかどうかを指定します。Pervasive.SQL サーバ製品を使用して いる場合、ローカル Scalable SQL エンジンは、サーバ上ではなく、ユーザの クライアント ワークステーション上で実行されます。 注意 [ローカルの使用]と[リモートの使用]の両方に[オン]を設定している場合、ク ライアントはまずリモート エンジンへのアクセスを試み、その後でローカル エンジ ンへのアクセスを試みます。また、クライアントはまず Scalable SQL へのアクセス を試み、リクエストの設定がすべて有効の場合は、その後で Btrieve へのアクセスを 試みます。 [リモートの使用] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL リクエスタがリモート サーバ上で実行され ているサーバ エンジンへのアクセスを許可するかどうかを指定します。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-25 [サンクの使用] 範囲 Yes または No オンまたはオフ デフォルト No (サーバ エンジン の場合) 必要メモリの概算 クライアント エンジン 適用外 Win16 Windows NT Server Windows 9x、 Windows NT Workstation オン(ワークス テーション エンジ ンの場合、16 ビッ トのみ) このオプションは、Win32 コンポーネントにアクセスするために Win16 ク ライアントがサンクを使用するかどうかを指定します。サンクとは、32 ビット コードから 16 ビット コードの実行に変換すること、または 16 ビッ ト コードから 32 ビット コードの実行に変換することです。このオプション を設定できるのは、Win16 セットアップ ユーティリティのみです。 [並行タスク数] 範囲 デフォルト 5 ∼ 2,000 タスク 10 タスク 必要メモリの概算 [タスク数]* 20 バイト クライアント エンジン Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL インタフェースが同時にサービスできるタ スクの数を指定します(1 つのアプリケーションが複数のタスクを持つこと もあります) 。この数は、ワークステーション上で使用可能なメモリ容量に、 ある程度制限されます。 指定すべきタスクの数は、並行して使用することが予想される Scalable SQL アプリケーションの数によって異なります。必要以上のタスクの数を指定し てもメモリを浪費するだけです。あまりにも少ないタスク数を指定すると、 一部のアプリケーションが Scalable SQL エンジンにアクセスできなくなって しまう場合があります。 Microsoft Access を使って、Scalable SQL エンジンのデータを対象にオペレー ションを実行する場合は、このオプションを少なくとも 15 に設定してくだ さい。Microsoft Access ではしばしば複数のタスクが生成されます。 注意 Windows 3.x の場合、これは Scalable SQL にアクセスできるアプリケーションの数 になります。Windows NT または Windows 9x の場合、これは、1 つのアプリケー ションから Scalable SQL にアクセスできるスレッドの数になります。 3-26 Pervasive.SQL User’s Guide [並行セッション数] 範囲 デフォルト 必要メモリの概算 3 ∼ 2,000 セッション 10 セッション [タスク数]* [セッション数]* 30 バイト クライアント エンジン Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL エンジンがタスクあたり許可するセッショ ンの最大数を設定します。指定できるセッションの数は、ワークステーショ ン上で使用可能なメモリ容量に、ある程度制限されます。 通信セッション数は Scalable SQL エンジンへのログイン数と関連しています が、これらは同じではありません。Scalable SQL エンジンへのログインは常 に新しい Scalable SQL エンジン セッションを生成します。ただし、新しい 通信セッションが生成されるかどうかはログインされたデータベースのロ ケーションによります。同じタスクが同一サーバ上のデータベースにログイ ンする場合、このタスクは 2 つの異なる Scalable SQL エンジン セッション を持ちますが、通信セッションは 1 つだけです。これは、リクエスタが 2 番 目のログインに対してネットワーク接続を再利用するためです。 Microsoft Access を使って、Scalable SQL のデータを対象にオペレーションを 実行する場合には、このオプションを 10 に設定してください。Microsoft Access ではしばしば複数のタスクが生成されます。 注意 16 ビット アプリケーションの場合、セッションの総数(タスクの数 * セッションの 数)は内部的に 2,000 セッションに制限されます。サンクを行うと、必要なメモリ容 量が 2 倍になります。これは、Win16 DLL と Win32 DLL の両方がロードされ、それ らのテーブルがそれぞれ割り当てられる必要があるためです。 [Scalable SQL コールバックのサポート] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 Win16 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは Win16 アプリケーションにだけ適用されます(Win32 オ ペレーティング システムで実行されている場合でも) 。 このオプションは、Scalable SQL エンジンが Scalable SQL インタフェースの コールバック中に他のアプリケーションに CPU サポートを譲渡するかどう かを指定します。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-27 [拡張 XQLVersion のサポート] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL 3.01 で追加された拡張 XQLVersion 呼出し をサポートするかどうかを指定します。 [通信バッファ サイズ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 4,096 ∼ 32,767 バイト 32,767 バイト 適用外 Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、アプリケーションと Scalable SQL エンジンとの間で相互 に転送可能なデータの最大長を指定します。 [ローカル変換 / マスク] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 Win16、Win32 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、API がサーバ上で実行されている Scalable SQL エンジン によって処理されるかどうかを指定します。Scalable SQL の新しいデータ型 のいずれかを使用し、ローカル Scalable SQL 3.01 エンジンを使用するように 設定を行う場合は、このオプションを[オン]にする必要があります。デ フォルトの設定で Scalable SQL Windows、Windows NT、および Windows 9x リクエスタでは、XQLConvert や XQLMask などの特定の呼出しはローカル に処理されます。このオプションを[オフ]にすると、すべての API 処理 がサーバ上で実行されている Scalable SQL 4.0 に送られます。 3-28 Pervasive.SQL User’s Guide DBNames インタフェースのオプション ここでは、機能別に Database Names インタフェースの環境設定オプション について説明します。これらのオプションはクライアントに適用され、環境 内で Scalable SQL エンジンを実行している場合のみ適用できます。 アクセス制御 アクセス制御の機能には、次の 4 つの設定が含まれます。 [代替 Infobase] ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 任意の有効な ファイル パス 適用外 適用外 Win32、Win16 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation Infobase は、ワークステーションに Database Names 環境設定情報を集中的に 格納したロケーションを使用させることでネットワーク管理者を支援しま す。使用中のオペレーティング システムにより、Database Names インタ フェースは次のデフォルトの Infobase のいずれかを使用します。 Windows NT と Windows 9x Database Names インタフェースの環境設定に使用するエントリを含んだマ シン上のレジストリ Windows 3.x Windows ディレクトリ内の BTI.INI このオプションは、代替 Infobase のパスを指定します。代替 Infobase は、 BTI.INI および BTI.CFG ファイルのフォーマットを持つテキスト ファイルで す。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-29 [トランスポート] 範囲 デフォルト [名前付きパイプ] 名前付きパイプ または [リクエスタ] 必要メモリの概算 クライアント エンジン 適用外 Win32、Win16 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは[Scalable SQL サーバ]オプションにリストされている サーバへの接続に使用する転送メカニズムを指定します。このオプション は、 [Scalable SQL サーバ]オプションに任意のサーバ名が指定されている 場合に使用します。NetWare サーバ上で任意のデータベース名が検出される 場合は[リクエスタ]を指定します。そうでない場合は[名前付きパイプ] を指定します。 [Scalable SQL サーバ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 使用可能な Scalable SQL サーバの一覧 適用外 適用外 Win32、Win16 Windows NT Server、 NetWare Server このオプションは、データベース名のクエリを行う Windows NT Server およ び NetWare Server の名前の一覧を表示します。環境が次のいずれかの条件を 満たす場合にこのオプションを使用します。 u SAPエージェントを使ってデータベース名を通知するWindows NT Server がネットワークにある。 u バインダリ サービスを提供する NetWare Server がネットワークにない。 u クライアント マシンが Microsoft クライアント ソフトウェアを使用して いる。 u データベース名を使って、TCP/IP 経由で Scalable SQL インタフェースに アクセスしようとしている。 (この条件は Windows NT Server と NetWare Server の両方に適用されます) 3-30 Pervasive.SQL User’s Guide [名前付きパイプ読込みタイムアウト] 範囲 デフォルト 0 ∼ 65,535 ミリ秒 500 ミリ秒 必要メモリの概算 クライアント エンジン 適用外 Win32、Win16 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、 [トランスポート]オプションが「名前付きパイプ」に 設定されている場合にのみ使用されます。このオプションは、名前付きパイ プによる読み込みが待機状態からタイムアウトになるまでの時間を、ミリ秒 単位で指定します。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-31 Btrieve リクエスタのオプション ここでは、Btrieve リクエスタのオプションについて説明します。 クライアント環境設定 クライアントの環境設定のカテゴリには以下で説明する設定が含まれます。 [スプラッシュスクリーン] 範囲 デフォルト 必要メモリの概算 オンまたはオフ オン 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、Btrieve インタフェースの起動画面を表示するかどうか を制御します。起動画面は Btrieve リクエスタを最初にロードしたときに表 示されます。 注意 サンクが[オン]になっている場合、32 ビット セットアップ ユーティリティを使用 して、32 ビット アプリケーションおよび 16 ビット アプリケーションのスプラッ シュスクリーンを有効または無効にすることができます。 16 ビット アプリケーションでは、サンクが[オフ]になっている場合、16 ビット セットアップ ユーティリティを使用して、スプラッシュスクリーンを有効または無効 にします。 3-32 Pervasive.SQL User’s Guide MicroKernel ルータのオプション ここでは、機能別に MicroKernel ルータの環境設定オプションについて説明 します。 アクセス制御 アクセス制御のカテゴリには、以下で説明する 4 つの設定が含まれます。 [ローカル] 範囲 デフォルト 必要メモリの概算 オンまたはオフ オン 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、データ ファイルにアクセスするためにローカル エンジ ンを使用するかどうかを指定します。 [リクエスタ] 範囲 デフォルト 必要メモリの概算 オンまたはオフ オン 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel ルータを使って、リモート サーバ上で実行 されている MicroKernel サーバ エンジンにアクセスできるかどうかを指定し ます。 注意 Pervasive.SQL を実行している FPNW(Microsoft の File and Print Services for NetWare)サーバでは、リクエスタのデフォルトの設定である[オン]をそのまま使 用することをお勧めします。FPNW サーバ上で Btrieve インタフェースをローカルに 実行し、ローカル FPNW ドライブ マッピングまたはローカル FPNW UNC パスを使 用しているときに[いいえ]に変更すると、ステータス コード 94(パーミッション エラーが発生しました)が返されることがあります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-33 [ターゲット エンジン] 範囲 デフォルト 必要メモリの クライアント エンジン 概算 [ローカル サーバを [ローカル サーバを 試してからワーク 試してからワーク ステーション]、 ステーション] [ローカル サーバ のみ]、 適用外 Win32、 OS/2 (サーバ版) のみ Windows NT Server Windows 9x、 Windows NT Workstation [ワークステーション のみ]1 [ワークステーション のみ] 1 Windows 9x プラットフォームの場合、このオプションはワークステーション エンジン用では無効になっており、デフォ ルトで[ワークステーションのみ]に設定されています。 このオプションは、ワークステーション エンジンとサーバ エンジンの両方 が使用可能なときに、MicroKernel ルータがリクエストを渡す場所を指定し ます。 注意 Scalable SQL と MicroKernel Database エンジンの両方で同じトレース ファイル名を 使用しないでください。 [ロード再試行回数] 範囲 デフォルト 必要メモリの概算 0 ∼ 65,536 回 5回 適用外 クライアント Win32、OS/2 (サーバ版)のみ エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel ルータがターゲット エンジンとの接続を試 行する回数を指定します。 3-34 Pervasive.SQL User’s Guide Communications リクエスタの設定 ここでは、Pervasive.SQL のクライアント側 Communications リクエスタに対 する設定について説明します。 アクセス制御 アクセス制御のカテゴリには、以下で説明する 3 つの設定が含まれます。 [サポート プロトコル] 範囲 デフォルト 必要メモリの概算 TCP/IP または SPXII 両方 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、Communications リクエスタが使用するプロトコルを指 定します。両方のプロトコルを指定すると、まず TCP/IP を使って通信が試 みられます。TCP/IP が使用可能でない場合は、SPXII が使用されます。 [TCP/IP 接続タイムアウト] 範囲 デフォルト 必要メモリの概算 1 ∼ 2,147,483,647 15 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、タイムアウトになる前に、TCP/IP 接続リクエストが正 常に処理されるまでリクエスタが待機する秒数を指定します。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-35 [ランタイム サーバ サポート] 範囲 デフォルト 必要メモリの概算 Yes または No Yes 適用外 クライアント Win32、Win16、 OS/2 (サーバ版のみ) エンジン Windows NT Server、 NetWare Server このオプションはランタイム サーバ サポートを制御します。このオプショ ンが有効になっていると、現在処理を実行しているドライブに対するユーザ 名が使用されます。ユーザ名とパスワードを入力すると、そのユーザ名とパ スワードがランタイム サーバ サポートに使用されます。 正しいパスワードを指定したとしても、SUPERVISOR と ADMIN は有効な ユーザ名になりません。リクエスタが SUPERVISOR または ADMIN 以外の ログイン ユーザ名を検出できないと、有効なユーザ名は渡されません。 3-36 Pervasive.SQL User’s Guide MicroKernel Database Engine のオプション ここでは、機能別に MicroKernel の環境設定オプションについて説明しま す。 u 3-37 ページの「ファイル設定」 u 3-41 ページの「メモリ リソース」 u 3-44 ページの「クライアント/システム トランザクション」 u 3-47 ページの「システム リソース/ディレクトリ」 u 3-54 ページの「Btrieve オペレーションのトレース」 u 3-56 ページの「NetWare のみの設定」 ファイル設定 ファイル設定のカテゴリには、以下で説明する 7 つの設定が含まれます。 [オープン ファイル数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 64,000 ファイル 50 ファイル 1 ファイルあたり 1,024 バイト 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、Scalable SQL インタフェースのデータ辞書ファイル (.DDF)を含めて、サーバで同時にオープンすることのできる重複のない ファイルの最大数を指定します。この値により、アクティブ ファイルのト ラッキングに使用する内部テーブルのサイズが決まります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-37 [ハンドル数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼メモリに よって制限 200 ハンドル 1 ハンドルあたり 256 バイト 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel が同時に使用できる論理ファイル ハンドル の最大数を指定します。ハンドルは[オープン ファイル数]とは異なりま す。たとえば、あるアプリケーションで同じファイルを 2 度オープンする場 合、オープン ファイル数は 1 ですが、ハンドル数は 2 になります。 [インデックス バランスの実行] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel がインデックス バランスを実行するかどう かを制御します。インデックス バランスを実行すると、読み込みオペレー ションでパフォーマンスが向上します。ただし、このオプションを有効にす ると、挿入、更新、および削除オペレーションの実行に余分な時間がかかる ようになり、より多くのディスク I/O が必要になる場合もあります。イン デックス バランスについては、 『Btrieve Programmer’s Guide』を参照してく ださい。 3-38 Pervasive.SQL User’s Guide [アーカイブ ロギングの実行] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel がアーカイブ ロギングを実行するかどうか を制御します。アーカイブ ロギングにより、ファイルのバックアップ操作 が容易になります。システム障害が発生した場合、アーカイブ ログ ファイ ルと、BUTIL -ROLLFWD または SQLUTIL -ROLLFWD コマンドを使って、 最後のバックアップからシステム障害の発生までにファイルに加えられた変 更を回復することができます。 アーカイブ ログ環境設定ファイルにエントリを追加して、MicroKernel に アーカイブ ロギングを実行させたいファイルを指定する必要があります。 アーカイブ ログ環境設定ファイルは、アーカイブ ロギングの対象となる ファイルを含むボリューム上に作成します。アーカイブ ロギングの詳細に ついては、7-58 ページの「アーカイブ ロギング」を参照してください。 [作成ファイルのバージョン] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 7.x、6.x、または 5.x 7.x 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation 7.x MicroKernel では、5.x および 6.x バージョンの MicroKernel で作成した ファイルを読み込むことができます。また、7.x バージョンでは、既存の ファイル フォーマットを使ってファイルを書き込むこともできます。つま り 5.x フォーマットを使って 5.x ファイルを書き込み、6.x フォーマットを 使って 6.x ファイルを書き込み、7.x フォーマットを使って 7.x ファイルを書 き込みます。 このオプションは、すべての新規ファイルを作成するときに使用するフォー マットを指定します。MicroKernel の以前のバージョンとの互換性を維持す る必要がある場合のみ 5.x または 6.x を指定します。5.x または 6.x を指定し ても、既存の 7.x ファイルには影響しません。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-39 [システム データ] 範囲 [なし] 、 [必要な場合] 、 または[常時] デフォルト 必要メモリの概算 クライアント エンジン 必要な場合 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation MicroKernel では、システム データを使ってトランザクションの一貫性保守 を保証します。このオプションでは、次のいずれかを設定できます。 u [なし]ファイル作成時にシステム データは追加されません。 u [必要な場合]ファイルが重複のないキーを持たない場合、作成時にシ ステム データがそのファイルに追加されます。 u [常時]重複のないキーを持っているかどうかに関係なく、ファイル作 成時に常にシステム データが追加されます。 ファイルが重複のないキーを持っている場合でも、ユーザがインデックスを 削除してしまう可能性があるため、システム データを追加することをお勧 めします。 [最大データベース数] 範囲 デフォルト 0 からメモリによっ 10 て制限を受ける 最大数まで 必要メモリの概算 クライアント 1 つのデータベース 適用外 あたり 800 バイト エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel がオープンできるデータベースの最大数を 指定します。 3-40 Pervasive.SQL User’s Guide メモリ リソース メモリ リソースのカテゴリには、以下の 5 つの設定が含まれます。 [キャッシュ割当て] 範囲 64 KB からシステム のメモリ制限、 または 4,194,303 KB (16KB の倍数) デフォルト 必要メモリの概算 クライアント エンジン 1,024 KB 指定したサイズ 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel が割り当てるキャッシュのサイズ(キロバ イト単位)を指定します。MicroKernel では、すべてのデータ ファイルにア クセスするためにこのキャッシュを使用します。MicroKernel は、16KB の 倍数となる値が使用されます。16KB の倍数となる値を指定すると、 MicroKernel では、その値を超えない最大の 16KB の倍数が使用されます。 この値は、I/O スレッドの数と乗算されます。 パフォーマンスを最適化するには、使用するファイルのサイズの合計値を超 えないキャッシュ サイズを割り当ててください。ただし、特にサーバで他 のアプリケーションを実行しているときには、使用可能なメモリをすべての キャッシュとして使いきってしまわないように注意する必要があります。必 要以上のキャッシュ サイズを割り当ててもメモリを浪費するだけで、パ フォーマンスを向上することにはなりません。 [通信バッファ サイズ] 範囲 デフォルト 1 ∼ 64 KB 16 KB 必要メモリの概算 クライアント [ワーカ スレッド数] 適用外 *([通信バッファ サイズ]+ 400) エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションに必要なメモリを計算するには、 [ワーカ スレッド数]およ び[通信バッファ サイズ]オプションの設定値がわかっている必要があり ます。 このオプションは、サーバ上で実行されているアプリケーションと MicroKernel サーバ エンジンとの間で相互に転送できるデータの最大ブロッ クのバイト長を指定します。それぞれのワーカ スレッドにより、この最大 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-41 長のデータを十分に格納できるだけのメモリ バッファが割り当てられます。 (メッセージは、MicroKernel またはアプリケーションがネットワーク経由で 受け渡す関連データの単位です。 ) 注意 システム管理者:このオプションに設定する最適な値については、使用する Pervasive.SQL アプリケーションのマニュアルを参照してください。複数のアプリ ケーションを使用している場合は、最大の値を設定します。 アプリケーション開発者:開発中のアプリケーションがデフォルト値を超える通信 バッファを必要とする場合は、最適なサイズをアプリケーションのマニュアルに明記 してください。 必要以上の値を設定しても、パフォーマンスを向上することにはなりませ ん。 [最大圧縮レコード サイズ] 範囲 デフォルト 0 ∼ 64,000 KB 5 KB 必要メモリの概算 クライアント 2,048 バイト* 適用外 [最大圧縮レコード サイズ] エンジン Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、データ圧縮ファイル属性を有効にして作成したファイル 内のレコードにアクセスするときに、MicroKernel が使用する圧縮バッファ のサイズを指定します。MicroKernel では、2,048 バイトにこのオプションに 指定した値を乗じたサイズを使って圧縮バッファを割り当てます。 (指定す る値は、レコード サイズまたはページ サイズによって決定できます。) このオプションに値を指定するときは、次のガイドラインに従ってくださ い。 u 圧縮ファイルを使用している場合は、圧縮ファイルに含まれている最大 レコードのサイズ(バイト単位)を指定します。ただし、このオプショ ンにはキロバイト単位の値を指定するため、端数がでる場合は、次に大 きなキロバイト単位の値に切り上げます。 たとえば、アクセスすることになる最大のレコードが 1,800 バイトであ る場合、このオプションには 2 という値を指定します。MicroKernel で は、4,096 バイトのメモリ(つまり、2,048 * 2)を圧縮バッファとして 割り当てます。 u 3-42 Pervasive.SQL User’s Guide 圧縮ファイルを使用せず、レコード長が 4,076 バイトを超える少なくと も 1 つの v7.0 ファイルがある場合、このオプションには 5 を設定しま す。 u 圧縮ファイルを使用せず、 レコード長が 4,076 バイトを超える v7.0 ファイ ルがない場合、このオプションには 0 を設定します。必要以上の値を指 定してもメモリを浪費するだけで、パフォーマンスを向上することには なりません。 [拡張オペレーション バッファ サイズ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 0 ∼ 64,000 KB 16 KB 指定したサイズ 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、拡張(マルチ レコード)オペレーションを処理するた めに必要なバッファのサイズ(キロバイト単位)を指定します。 ソート バッファ サイズ 範囲 デフォルト 0 KB からシステムの 0 KB メモリ制限、または 4,194,303 KB 必要メモリの概算 クライアント エンジン 指定したサイズ 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、実行時インデックスを作成するときにソートに使用する ため、MicroKernel によって動的に割り当てまたは割り当て解除されるメモ リの最大容量(キロバイト単位)を指定します。ソートに必要なメモリが指 定したサイズを超えたり、使用可能な処理メモリの 60% を超えると、テン ポラリ ファイルが作成されます。処理に必要なメモリ容量は動的な値であ り、システムの環境設定やロードの状況によって変化します。設定値として 0 を指定すると、使用可能なメモリ容量の 60% を超えない範囲で、必要な だけのメモリが自動的に割り当てられます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-43 クライアント/システム トランザクション [トランザクション一貫性保守] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、すべてのオペレーションを 1 つのトランザクション ロ グに書き込むことで、MicroKernel がトランザクションの一貫性保守を実行 するかどうかを制御します。トランザクション オペレーションとは、Begin Transaction (19) の後、および End Transaction (20) または Abort Transaction (21) の前に発生する一連のオペレーションのことです。トランザクション一貫性 保守は、トランザクション オペレーションにのみ適用されます。 トランザクション一貫性保守とは、MicroKernel がクライアントに正常終了 のステータス コードを返す前に、MicroKernel によるトランザクション ログ への書き込みの完了を保証することです。また、このオプションによりトラ ンザクションのアトミシティも保証されます。その結果、特定のステートメ ントが完全に実行されなかった場合でも、そのステートメントによる部分的 または曖昧な実行結果がデータベース内に残されることがなくなります。 [トランザクション一貫性保守]を有効にしているときでも、一部のファイ ルでトランザクションの一貫性保守が実行されない場合があります。ファイ ルには、少なくとも 1 つの重複のないキーが含まれている必要があります。 重複のないキーを含んでいないファイルでは、システム定義のログ キーを 使用できます。 [オペレーション バンドル制限] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 65,535 オペレーション 1,000 オペレーション 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、システム トランザクションを起動するために必要なオ ペレーションの最大数(1 つのファイルを対象に実行される)を指定しま す。MicroKernel では、[オペレーション バンドル制限]または[起動時間 3-44 Pervasive.SQL User’s Guide 制限]オプションのいずれかで設定した値に達したとき、またはキャッシュ の再使用が必要になったときにシステム トランザクションを起動します。 MicroKernel Database エンジンは、各ユーザのトランザクション(Begin Transaction から End Transaction または Abort Transaction まで)を 1 つのトラ ンザクションとして扱います。たとえば、Begin Transaction から End Transaction の間に 100 の Btrieve オペレーションがある場合、合計で 102 の Btrieve オペレーション全体が、1 つのオペレーションとして扱われます。 [起動時間制限] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 1,800,000 ミリ秒 1,000 ミリ秒 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、システム トランザクションを起動するタイム リミット (ミリ秒単位)を指定します。MicroKernel では、 [オペレーション バンドル 制限]または[起動時間制限]オプションのいずれかで設定した値に達した とき、またはキャッシュの再使用が必要になったときにシステム トランザ クションを起動します。 [トランザクション ログ バッファ サイズ] 範囲 デフォルト 64 KBからシステム 64 KB メモリの上限 必要メモリの概算 クライアント エンジン 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel が使用するトランザクション ログ バッファ とアーカイブ ログ バッファ両方のサイズ(キロバイト単位)を指定します。 ログ バッファ サイズを大きくすると、ログ情報が頻繁にディスクに書き込 まれなくなるため、パフォーマンスが向上する場合があります。 注意 [トランザクション ログ バッファ サイズ]に[トランザクション ログ サイズ]の設 定値を超える値を設定すると、[トランザクション ログ サイズ]の値は自動的に[ト ランザクション ログ バッファ サイズ]の設定値に変更されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-45 [トランザクション ログ サイズ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 64 KB から次のい ずれかの中で最小 のもの 512 KB 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation −使用可能なディ スク容量 −オペレーティン グ システムのファ イル上限 − 4,096 MB このオプションは、トランザクション ログ セグメントの最大サイズを指定 します。MicroKernel では、ログ ファイルがそのサイズ制限に達すると、古 いログ セグメント ファイルが自動的にクローズし、新しいセグメント ファ イルの使用が開始されます。トランザクション ログ セグメント サイズを制 限すると、MicroKernel が一時的に使用するディスク容量を少なくできます。 ただし、トランザクション ログ セグメントのサイズを制限しても、 MicroKernel による処理速度が向上するわけではありません。これは、ログ セグメントのクローズと作成をより頻繁に行わなければならなくなるためで す。このためパフォーマンスが低下する場合があります。 注意 このオプションに[トランザクション ログ バッファ サイズ]の設定値を下回る値を 設定しても、このオプションには[トランザクション ログ バッファ サイズ]に等し い値が自動的に設定されます。 3-46 Pervasive.SQL User’s Guide システム リソース/ディレクトリ システム リソース/ディレクトリのカテゴリには、次の 11 の設定が含まれ ます。 [アクティブ クライアント数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 65,535 クライアント 30 クライアント 1 クライアント あたり 250 バイト 適用外 Windows NT Server、 NetWare Server このオプションは、同時に MicroKernel にアクセスできるクライアントの最 大数を指定します。 注意 必要以上の値を指定してもパフォーマンスを向上することにはなりません。ただし、 ステータス コード 162(クライアント テーブルがいっぱいです)が返されたときは、 このオプションの設定値を大きくしてください。 [I/O スレッド数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 1 ∼ 64 スレッド 4 スレッド 1 スレッドあたり 8 KB 適用外 Windows NT Server、 NetWare Server このオプションは、MicroKernel によって作成されるバックグラウンドの I/O スレッド数を指定します。I/O スレッドは、ファイルを対象としたディスク I/O を実行し、MicroKernel のキャッシュを管理します。MicroKernel がデー タ ファイルの更新または書き込みを行うとき、それぞれのファイルは特定 の I/O スレッドにシーケンシャルに割り当てられます。最後のスレッドに達 すると、すべてのデータ ファイルがバックグラウンド スレッドに割り当て られるまで、処理のやり直しが行われます。MicroKernel では、必要に応じ て追加の I/O スレッドを作成しないため、必要になると予想される最大の I/O スレッド数を指定するようにしてください。 パフォーマンスを最適化するため、このオプションには、 [オープン ファイ ル数]の設定値または 8 のうちの、どちらか小さい値を設定します。8 を超 える値を指定すると、パフォーマンスが低下する場合があります。また、 [オープン ファイル数]の設定値を超える値を設定しないでください。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-47 注意 アプリケーション開発者: この設定はコンピュータの特性、OS の環境設定、および MicroKernel Database エンジンの作業量に依存するため、適切な I/O スレッド数を厳 密に計算する方法はありません。 [待機ロック タイムアウト] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 0 ∼ 4,294,967 秒 30 秒 適用外 適用外 Windows NT Server、 NetWare Server (49.7 日) Windows 9x、 Windows NT Workstation このオプションは、MicroKernel に対するウェイト ロックのタイムアウトを 指定します。ウェイト ロックを使ってレコードを取得するとき、リクエス トされたすべてのレコードに対するロックを取得できるまで、MicroKernel はリクエスタにステータスを返しません。別のアプリケーションがリクエス トされたいずれかのレコードをロックしている場合、MicroKernel では、リ クエストされた残りのレコードのロックを続ける前に、そのアプリケーショ ンがレコードのロックを解除するのを待ちます。ウェイト ロックのタイム アウト時間が経過するか、レコードをロックできない場合、リクエスタにス テータス コードが返されます。 このオプションの目的は、ネットワークのトラフィックを著しく減少させ、 ロッキングによる衝突が発生した場合のネットワーク パフォーマンスを向 上させることです。この設定には(後述のとおり)例外があり、アプリケー ションと MicroKernel の間にリクエスタ(W3BIFxyy.DLL など)がある場合 には、アプリケーションに何の影響も及ぼしません。この場合、ウェイト ロックのタイムアウトが経過しても、アプリケーション(Win16 アプリケー ションを除く)に通知することなく、リクエスタがオペレーションを再試行 します。ロックが許可された場合とデッドロックが検出された場合にのみ、 制御が返されます。 注意 Pervasive.SQL 上で動作する Win16 のアプリケーションがある場合、このオプション をデフォルトより低い値(1 秒など)に設定しようとすることがあります。Windows 3.x、Windows 9x、Windows NT 上で動作する Win16 アプリケーションでのウェイト ロックについての詳細は、『Btrieve Programmer’s Guide』を参照してください。 3-48 Pervasive.SQL User’s Guide [システム キャッシュ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 適用外 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは Windows NT と Windows 9x に対応した MicroKernel でだけ 使用されます。NetWare MicroKernel では、このオプションは無視されます。 このオプションは MicroKernel 独自のキャッシュ割当てに加えて、Windows のシステム キャッシュを使用するかどうかを指定します。たいていの場合、 このオプションをオンにすると、パフォーマンスが向上します。ただし、コ ンピュータに搭載されているメモリの容量が比較的少ない場合は、このオプ ションをオフにしてもかまいません。Windows NT のパフォーマンス モニタ ユーティリティのページング ファイル、およびプロセス オブジェクトを 使って、Windows NT のシステム キャッシュが効率的に使用されているかど うかを調べることができます。NTDBSMGR インスタンスの場合、ページン グ ファイル オブジェクトでは[% Usage]および[% Usage Peak]をモニタ し、プロセス オブジェクトでは[Page Faults/Second]および[Page File Bytes]をモニタします。 注意 アプリケーション開発者:パフォーマンスが向上せず、使用可能なバイト数が少な く、いつまでもその状態が変わらない場合(特に、MicroKernel を使って何らかの処 理を行っているときに)は、システム キャッシュをオフにしてください。ただし、こ の設定をオフにする場合、アプリケーションが次の条件を満たしている必要がありま す。 −ファイル アクセスがボリュームのセクタ サイズの倍数の位置から始まる。 −ファイル アクセスがボリュームのセクタ サイズの倍数となるバイト数に対応して いる。たとえば、セクタ サイズが 512 バイトの場合、アプリケーションは 512、 1024、または 2048 バイトの読み書きをリクエストできますが、355、981、または 7171 バイトの読み書きはリクエストできません。 −読み込みおよび書き込みオペレーションに使用するバッファ アドレスがボリューム のセクタ サイズの倍数にあたるメモリ内のアドレスに配置されている。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-49 [起動時のリソース割当て] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel を起動するときに、スレッドやメモリ バッ ファなどのリソースを割り当てるように MicroKernel に指示します。最初の オペレーション リクエストが行われるまで、リソースの割り当ては行われ ません。Pervasive.SQL アプリケーションでは、必要に応じてリソースの割 り当てが自動的に行われます。このため、たいていの場合、明示的に指定を 行う必要はありません。 [非アクティブ時、最小の状態に戻す] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オン 適用外 適用外 Windows NT Server Windows 9x、 Windows NT Workstation このオプションにより、アクティブ クライアントが存在しないとき、 MicroKernel は大部分のメモリおよびスレッド リソースをシステムに開放 し、最小の状態に戻ります。 (これは MicroKernel が起動したときの初期状 態に相当します。 )別のクライアントがアクティブになると、自動的にリ ソースの再割り当てが行われます。 [最小状態に戻す待ち時間] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 0 ∼ 4,294,967 秒 30 秒 適用外 適用外 Windows NT Server (49.7 日) 3-50 Pervasive.SQL User’s Guide Windows 9x、 Windows NT Workstation このオプションは、MicroKernel が最小の状態に戻るまでに待機する時間を 指定します。 (これは MicroKernel が起動したときの初期状態に相当しま す。 )最小の状態に戻ることで、MicroKernel は大部分のメモリおよびスレッ ド リソースをシステムに開放します。場合によっては、MicroKernel を最小 の状態に戻したくないこともあります。たとえば、MicroKernel を繰り返し 使用するバッチ ファイルを実行しているような場合です。別のクライアン トがアクティブになると、自動的にリソースの再割り当てが行われます。 注意 [リモート リクエストの受付]オプションがオフに設定されていると、このオプショ ンは無視されます。 [ワーカ スレッド数] 範囲 デフォルト 必要メモリの概算 クライアント 1 ∼ 64 スレッド 1 スレッド ワーカ スレッド数 適用外 *(最大レコード サイズ+ 400) エンジン Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、クライアント リクエストを処理するために MicroKernel が最初に作成するスレッドの数を指定します。ワーカ スレッドとは、リク エストを行うクライアント プロセスに代わって実際にファイル オペレー ションを実行する要素のことです。MicroKernel では、他のすべてのワーカ がビジーになっているときに、さらに別のオペレーション リクエストを処 理する必要が生じると動的にワーカ スレッドの追加が行われます。 注意 これらのワーカ スレッドはローカル クライアントだけで動作します。リモート クラ イアントで動作するのはスレッドの別のプールです。 Windows NT 開発者:ワーカ スレッド数のパラメータには、MicroKernel Database Engine コンポーネントの[システム リソース/ディレクトリ]に 対するものと、Btrieve Communication Manager コンポーネントの[サーバ通 信環境設定]に対するものの 2 つがあります。 システム リソースに対するワーカ スレッド数はローカル クライアントのみ に適用されます(たとえば、MicroKernel が実行されている Windows NT Server 上で実行されているアプリケーション) 。この設定により、ローカル リクエストを処理するために、MicroKernel Database エンジンの起動時に作 成されるワーカ スレッドの数が決まります。ローカル クライアントに対す るオペレーションを実行する必要があるときには、ワーカ スレッドが動的 に追加されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-51 デフォルトの設定は 1 です。ローカル アプリケーションがより大きな設定 値を必要とする場合、MicroKernel では、起動時に適切な数のスレッドを割 り当てるように最初に環境設定を行うことができます。その結果、アプリ ケーションの起動後に動的にスレッドを追加するための時間が必要なくなる ため、パフォーマンスが向上することがあります。 Windows NT のパフォーマンス モニタを使用すると、ローカル クライアント のリクエストを処理するときに MicroKernel が必要とするスレッドの最大数 を調べることができます。パフォーマンス モニタで[スレッド]を選択し、 [インスタンス]フィールドに表示される NTMKDE スレッドの数を確認し てください。 注意 MicroKernel はデフォルトの設定で 6 つのスレッド(5 つの MicroKernel スレッド+ 1 つのワーカ スレッド)を使って起動します。スレッドの総数が 6 を超える場合 (ローカル アプリケーションの実行後に)、MicroKernel は複数のワーカ スレッドを使 用しています。ローカル クライアントに必要なワーカ スレッドの最大数を計算する には、Windows NT MicroKernel Database エンジン スレッドの総数から 5 を引き算し ます。Pervasive.SQL のセットアップ ユーティリティを使って、システム リソースの ワーカ スレッドを変更することができます。 Btrieve 通信マネージャ コンポーネントに対する[通信スレッド数]の設定 にも、システム リソースのワーカ スレッドの設定と同じ目的があります。 これらのスレッドは、リモート クライアント(ワークステーション アプリ ケーション)に対するファイル オペレーションを処理するために使用され ます。ただし、通信サーバのスレッドは動的に追加されません。 それぞれのリモート セッションに対して 1 つのスレッドを割り当てるのが 理想的ですが、大部分のマルチ ユーザ環境でこれを行うのは現実には不可 能です。Btrieve 通信マネージャに使用されているアーキテクチャに対する Microsoft のガイドラインに従うと、1 プロセッサあたり 2 ∼ 3 を超えるワー カ スレッドを起動すると、パフォーマンスの明らかな向上が得られないば かりか、結局は全般的なパフォーマンスの低下が発生する場合があります。 [ホーム ディレクトリ] 範囲 デフォルト 完全に修飾された エンジンが 有効なパス ロードされた ディレクトリ 必要メモリの概算 クライアント エンジン 適用外 適用外 Windows NT Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel が一部のシステム ファイルの格納に使用 し、さらにテンポラリ作業ファイルなどのその他のファイルのデフォルト ディレクトリとして使用するロケーションを指定します。パスには、有効な ドライブ指定または UNC パスが含まれている必要があります。 3-52 Pervasive.SQL User’s Guide 注意 次のように BTRINTF 環境変数を使って、ホーム ディレクトリの指定を一時的に無効 にすることができます。 SET BTRINTF=/H:drive:¥path ここで、drive は有効なドライブ名で、path はホーム ディレクトリのパスです。 [トランザクション ログ ディレクトリ] 範囲 デフォルト 完全に修飾された エンジンが 有効なパス ロードされた ディレクトリ 必要メモリの概算 クライアント エンジン 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel がトランザクション ログの格納に使用する ロケーションを指定します。パスには、有効なドライブまたはボリューム指 定、あるいは UNC パスが含まれている必要があります。また、指定する ディレクトリが存在する必要があります。 [作業ディレクトリ] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 完全に修飾された 有効なパス なし 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel の作業ディレクトリのロケーションを指定 します。このディレクトリは、大規模な繰り返し重複インデックスの構築な どのオペレーションで、テンポラリ ファイルを格納するために使用されま す。特定のボリュームでディスク容量に制限がある場合には、このオプショ ンを使って、ディスク容量に余裕のあるボリュームに、作業ディレクトリを 作成することができます。作業ディレクトリを指定するには、 [現在値]テ キスト ボックスにパスを入力します。このパスには、有効なドライブまた はボリューム指定、あるいは UNC パスが含まれている必要があります。作 業ディレクトリを指定しないと、データ ファイルのロケーションがデフォ ルトの設定となります。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-53 Btrieve オペレーションのトレース Btrieve オペレーションのカテゴリには、次の 5 つの設定が含まれます。 [オペレーションのトレース] 範囲 デフォルト 必要メモリの概算 クライアント エンジン オンまたはオフ オフ 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションによりトレース機能のオン/オフを切り替えることができま す。トレース機能を使用すると、すべての Btrieve API 呼出しをトレースし て、その結果をファイルに保存できます。開発者はこの機能を使ってアプリ ケーションのデバッグを行うことができます。MicroKernel では、強制書き 込みモードを使ってトレース ファイルの書き込みを行うため、MicroKernel が正常にアンロードされなかった場合にも、データが確実にファイルに書き 込まれます。受信するリクエストの頻度によっては、MicroKernel のパ フォーマンスが大幅に影響を受けることがあります。このオプションをオン にする場合は、 [トレース ファイル]オプションも指定する必要がありま す。 [トレース ファイル] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 完全に修飾された Windows:エンジン 適用外 有効なファイル名 がロードされた ディレクトリ NetWare: sys:¥system¥ mkde.tra 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、MicroKernel がトレース情報を書き込むためのトレース ファイルを指定します。ファイル名には、有効なドライブまたはボリューム 指定とパスを入力するか、UNC パスを使用する必要があります。 注意 Scalable SQL と MicroKernel Database エンジンとで、同じトレース ファイル名を使 用しないでください。 3-54 Pervasive.SQL User’s Guide [トレースするオペレーションの選択] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 有効な Btrieve オペレーション コード すべての オペレーション コード 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation [利用可能なオペレーション]リストボックスには、トレース可能な Btrieve オペレーション コードの一覧が表示されます。トレースの対象となるオペ レーションを指定するには、目的の Btrieve オペレーション コードを選択し て[追加]ボタンをクリックします。すべての Btrieve オペレーション コー ドを追加するには、 [全追加]ボタンをクリックします。追加したオペレー ション コードは[トレース オペレーション]リストボックスに表示されま す。 [トレース オペレーション]リストボックスから Btrieve インタフェース オ ペレーション コードを選択して[削除]ボタンをクリックします。すべて の Btrieve オペレーション コードは[全削除]ボタンをクリックします。削 除したオペレーション コードは[利用可能なオペレーション]リストボッ クスに表示されます。 [データ バッファのバイト数] 範囲 デフォルト 0 ∼ 65,535 バイト 32 バイト 必要メモリの概算 クライアント エンジン 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、トレース機能がオンになっているときに、MicroKernel がトレース ファイルに書き込むデータ バッファのサイズを指定します。指 定するサイズはトレースの目的によって異なります(データ バッファ全体 の内容を確認する必要があるのか、あるいはレコードを特定できるだけの バッファ内容があれば十分なのかによります) 。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-55 [キー バッファのバイト数] 範囲 デフォルト 必要メモリの概算 クライアント エンジン 0 ∼ 255 バイト 32 バイト 適用外 適用外 Windows NT Server、 NetWare Server Windows 9x、 Windows NT Workstation このオプションは、トレース機能がオンになっているときに、MicroKernel がトレース ファイルに書き込むキー バッファのサイズを指定します。指定 するサイズはトレースの目的によって異なります(キー バッファ全体の内 容を確認する必要があるのか、あるいはキーを特定できるだけのバッファ内 容があれば十分なのかによります) 。 NetWare のみの設定 ここでは、NetWare のみで使用可能なオプションについて説明します。この 中には、BROUTER とランタイム サーバ サポートの設定が含まれています。 [BROUTER のロード] 範囲 デフォルト 必要メモリの概算 クライアント サーバ オンまたはオフ オフ 適用外 適用外 NetWare このオプションは、BSTART コマンドの実行中にメッセージ ルータ (BROUTER.NLM)をロードするかどうかを制御します。メッセージ ルータ を使用すると、サーバ上で NLM として実行されている他のアプリケーショ ン(たとえば、Scalable SQL インタフェース)と MicroKernel がロードされ ているリモート サーバとの間でデータのやり取りを行えるようになります。 リモート サーバ上のデータにアクセスするには、このオプションをオンに 設定します。 3-56 Pervasive.SQL User’s Guide [BROUTER 通信バッファサイズ] 範囲 デフォルト 1 ∼ 64 KB 16 KB 必要メモリの概算 クライアント (バッファサイズ+ 適用外 355 バイト* 4) サーバ NetWare このオプションは、任意のローカル サーバ MicroKernel アプリケーションが BROUTER を介してリモート サーバでアクセスできるユーザ データの最大 長を指定します。ユーザ データ長はバイト単位で指定します。必要以上の 値を指定してもメモリを浪費するだけで、パフォーマンスを向上することに はなりません。 [Runtime サーバ サポート モード] 範囲 デフォルト [サーバポートを [サーバポートを 有効にする]、 有効にする] [サーバポートを 無効にする]、 または [事前認証を使って 有効にする] 必要メモリの概算 クライアント サーバ 適用外 適用外 NetWare このオプションは、MicroKernel によって提供されるランタイム サーバ サ ポートのレベルを指定します。 [サーバポートを有効にする]を指定すると、有効なユーザ名の入力が要求 されます。パスワードを指定することもできますが、これは必ずしも必要な 操作ではありません。 [事前認証を使って有効にする]を指定すると、有効なユーザ名とパスワー ドの入力が要求されます。 [サーバポートを無効にする]を指定するときは、 任意の Btrieve ファイルにアクセスするため Netware サーバとの接続が確立 されている必要があります。サーバに接続されていないと、ステータス コード 99(Btrieve リクエスタは NetWare Runtime サーバにアクセスできま せん)が返されます。 正しいパスワードを指定したとしても、SUPERVISOR と ADMIN は有効な ユーザ名にはなりません。リクエスタが SUPERVISOR または ADMIN 以外 のログイン ユーザ名を検出できないと、有効なユーザ名は渡されません。 ランタイム サーバ サポートの詳細については、Novell のマニュアルを参照 してください。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-57 Btrieve 通信マネージャのオプション ここでは、Pervasive.SQL サーバでの Btrieve 通信マネージャの環境設定オプ ションについて説明します。 サーバ通信環境設定 サーバ通信環境設定のカテゴリには、次の 6 つの設定が含まれます。 [セッション数] 範囲 デフォルト 必要メモリの概算 クライアント サーバ Windows NT: 0 からシステム メモリの上限 15 セッション Windows NT: 1 セッション あたり 32 KB 適用外 すべて NetWare: 1 ∼ 4,906 このオプションは、同時にサーバにアクセスできるネットワーク接続の最大 数を指定します。必要以上の値を指定してもパフォーマンスを向上すること はできません。このオプションで使用するメモリ容量は[受信パケットサイ ズ]オプションで必要となるメモリに影響を与えます。これら両方のオプ ションは連動して動作します。 1 つのクライアントで複数のアプリケーションを実行している場合、それぞ れのアプリケーションは MicroKernel に対して 1 つまたは複数のセッション を生成します。NetWare では、それぞれのプロトコルに対して同数のセッ ション数を確保することができます。たとえば、このオプションに 10 を設 定すると、それぞれ 10 個の SPX セッションと TCP/IP セッション(合計で 20 セッション)を持つことができます。 [通信バッファサイズ] 範囲 デフォルト 必要メモリの概算 クライアント サーバ Windows NT: 1 ∼ 63 KB Windows NT: 16 KB 通信バッファ サイズ *(通信スレッド数 + 1) 適用外 すべて NetWare: 512 ∼ 65,116 バイト NetWare: 16,384 バイト このオプションは、Btrieve 通信レイヤがリモート クライアントからのデー タベース リクエストを処理するために割り当てるバッファのサイズ(バイ ト単位)を指定します。このオプションには、少なくとも Btrieve リクエス タに指定したデータ長パラメータの最大長と同じ値を指定してください。 3-58 Pervasive.SQL User’s Guide [通信スレッド数] 範囲 デフォルト 必要メモリの概算 クライアント サーバ Windows NT: 1 ∼ 128 スレッド 3 スレッド 1 ワーカ スレッド あたり 8 KB 適用外 すべて NetWare: 1 ∼ 200 このオプションは、クライアント リクエストを処理するために Btrieve 通信 マネージャが動的に作成する通信スレッドの数を指定します。通信スレッド とは、リクエストを行うクライアントのプロセスに代わって、実際にファイ ル オペレーションを実行するサーバのプロセスのことです。NetWare では、 サポートされているそれぞれのプロトコルが、指定した数の通信スレッドを 作成します。 [リモート リクエストの受付] 範囲 デフォルト 必要メモリの概算 クライアント サーバ オンまたはオフ オン 適用外 適用外 Windows NT このオプションは、通信マネージャがリモート サーバおよびクライアント ワークステーションからのリクエストを受け付けるかどうかを指定します。 このオプションをオンにすると、通信マネージャはその存在をネットワーク 上に通知します。 [サポート プロトコル] 範囲 デフォルト 必要メモリの概算 クライアント サーバ TCP/IP と SPXII 両方 適用外 適用外 すべて このオプションは、通信マネージャが使用するプロトコルを指定します。両 方のプロトコルを指定すると、まず TCP/IP を使って通信が試みられます。 TCP/IP が使用可能でない場合は、SPXII が使用されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-59 [リモート読込みバッファサイズ] 範囲 デフォルト 必要メモリの概算 クライアント サーバ 4 ∼ 64 KB 4 KB 現在アクティブな 各リモート セッ ションに割り当て られているメモリ 容量 適用外 Windows NT このオプションは、オペレーティング システムの通信レイヤから受け取っ たパケットで MicroKernel が読み込むバッファのサイズ(キロバイト単位) を指定します。この値はキロバイト単位で指定してください。どんな値を入 力してもかまいませんが、エンジンがバッファを割り当てる段階で、最も近 いシステム ページ サイズ(Intel プラットフォームの場合は 4KB)の倍数に 切り上げられます。 このオプションには[通信バッファサイズ]オプションの設定値+システム のオーバーヘッドに対する許容値(約 400 バイト)に等しい値を設定してく ださい。ただし、システムはアクティブな各リモート クライアント接続に 対して指定したサイズのバッファを割り当てるため、このオプションにデ フォルトを超える値を設定すると、メモリ ペナルティを犯すことになりま すので注意してください。たとえば、100 のリモート クライアントがアク ティブで、バッファ サイズを 4KB に設定すると、システムでは 400KB のメ モリを割り当てます。また、バッファ サイズを 16KB に設定すると、シス テムでは 1600KB のメモリを割り当てます。 NetWare のみの設定 [受信パケットサイズ] 範囲 デフォルト 532 ∼ 4,096 バイト 1,500 バイト 必要メモリの概算 クライアント (以下の計算式を 適用外 参照してください) サーバ NetWare 必要メモリの概算: 「必要メモリの概算」フィールドで指摘したとおり、この設定には次の計算 式が含まれます。 受信パケット数 * 受信パケット サイズ ここで受信パケット数 =(通信バッファ サイズ/受信パケット)+ 1 または 45 のうち、どちらか大きい方 3-60 Pervasive.SQL User’s Guide このオプションは SPX プロトコルに適用され、このコンポーネントが受信 する個別のネットワーク パケットのサイズを指定します。必要メモリの概 算値を計算するために使用する受信パケット数は実行中に動的に増加します が、前述の数が初期値になります。 [受信パケットサイズ]オプションのデフォルト値は、使用するネットワー ク カードやハードウェアの性能によって変化します。イーサネット トポロ ジ上で Win32 クライアント リクエスタを使用している場合は、このオプ ションにはデフォルト値を設定してください。トークン リング トポロジを 使用している場合は、このオプションに 4,096 バイトを設定してください。 あまりにも小さな値を設定すると、ワークステーションがハングしたり、ス テータス コード 95(セッションは既に無効になっています)が返されるこ とがあります。 [SAP の使用] 範囲 デフォルト 必要メモリの概算 クライアント サーバ 自動検出、はい、 いいえ 自動検出 適用外 適用外 NetWare このオプションは、Btrieve 通信マネージャが SAP(Service Advertising Protocol)を使用するかどうかを指定します。このオプションの設定は SPX 通信にだけ適用されます。 セットアップ ユーティリティを使ったコンポーネントの環境設定 3-61 3-62 Pervasive.SQL User’s Guide 第4章 DDF Ease を使った DDF の 作成と保守 この章では、既存の Btrieve データ ファイルに対応するデータ辞書ファイル (DDF)の作成と保守について説明します。この章は次のセクションから構 成されています。 u 4-2 ページの「DDF Ease の概要」 u 4-5 ページの「DDF Ease の起動」 u 4-7 ページの「既存の Btrieve ファイルに対する DDF の作成」 u 4-18 ページの「リレーショナル データベースの作成」 DDF Ease を使った DDF の作成と保守 4-1 DDF Ease の概要 ここでは、DDF Ease の概要とデータ辞書ファイルに関する基本的な考え方 について説明します。 DDF とは データ辞書ファイル(DDF)は、テーブル、列、インデックス(Btrieve の 用語では、それぞれファイル、フィールド、およびインデックス)の形式で Btrieve データベースのデータを記述します。 Btrieve データベースには、データベース内のデータのフォーマットと意味 を記述する情報は明示的には含まれていません(この情報は Btrieve アプリ ケーションの内部で定義されます) 。DDF は、ODBC、Scalable SQL、および その他さまざまな市販ツールやアプリケーションが Btrieve データベースの データにアクセスできるように、Btrieve データベースに含まれるフィール ドの定義方法を提供します。データの構造と意味を記述するために使用する フォーマットは、Scalable SQL v3.01 と Scalable SQL v4.0 では異なります。 DDF Ease とは DDF Ease は、Pervasive データベース開発者による、データ辞書ファイル (DDF)とデータベース ファイルの作成と保守を可能にする、Win32 アプリ ケーションです。DDF Ease を使用すると、既存の Btrieve ナビゲーショナル データベースにリレーショナル機能を追加し、新しいデータベースの作成、 新しいテーブルの設計、データベースとテーブル定義の一貫性のチェックな どを行うことができます。また、データ辞書を Scalable SQL 3.x フォーマッ トから Scalable SQL 4.x フォーマットに変換することもできます。DDF Ease では Btrieve 呼出しを実行して、テーブルの統計情報やその他の情報を取得 します。このため、少なくともサーバに対する読み込みアクセス権を持って いる必要があります。 DDF Ease では、Scalable SQL と ODBC に対する標準 DDF の作成と保守を行 います。つまり、FILE.DDF、FIELD.DDF、および INDEX.DDF の各 DDF で す。 DDF Ease は ODBC と Scalable SQL(SQL Interface とも呼ばれます)を使っ て辞書およびテーブル定義の作成と保守を行うため、対象となるデータベー スは Scalable SQL、ODBC、および ODBC ベースのサードパーティ製ツール とともに動作できるようになります。 DDF Ease では次の機能を提供します。 u Scalable SQL v3.x および Scalable SQL v4.0 DDF ファイル フォーマットの サポート u ODBC および Scalable SQL との完全な互換性 4-2 Pervasive.SQL User’s Guide u DDF の作成、オープン、および削除 u 新しいテーブル定義の作成 u 既存の Btrieve データ ファイルに対するテーブル定義の作成 u テーブル定義の削除 u テーブルの列とインデックス定義の変更 u テーブルの列の変更 u テーブルの列の追加と削除 u 名前付きインデックスの追加と削除 u テーブルのデータ、テーブル定義、および統計情報の表示と印刷 u データベース辞書フォーマットの変換 u データベースの一貫性のチェック u データベース セキュリティの有効/無効の切り替え DDF Ease を使用するための条件 DDF Ease は、デフォルトの Pervasive.SQL Win32 クライアント インストール の一部としてインストールされます。このユーティリティを使用するには、 あらかじめ ODBC Interface v2.5 をインストールしておく必要がありますが、 ODBC Interface v2.5 もデフォルトのクライアント インストールの一部として インストールされます。ただし、インストール時に ODBC のアンインス トールを選択していると、DDF Ease を実行できなくなります。 DDF Ease は、クライアントとサーバの両方でデフォルトの Pervasive.SQL コ ンポーネントとともに使用することをお勧めします。Scalable SQL v3.01 エ ンジンを使用することもできますが、DDF Ease でテーブルの列とインデッ クスの追加と削除ができなくなるという制限があります。また、 Pervasive.SQL クライアントとともにリモート Btrieve v6.15 サーバ エンジン を使用するといった、その他の環境設定でも DDF Ease は動作するはずです が、確認テストは行われていません。DDF ファイルの Btrieve ファイル フォーマットは 6.x 以降でなければなりませんが、テーブルのデータ ファイ ルは 6.x より前の Btrieve ファイル フォーマットでもかまいません。 Btrieve v7.0 エンジンには、v7.0 より前のバージョンのファイル フォーマッ トとの互換性があります。Btrieve ファイルのバージョンを変更するには、 Pervasive データベースに付属する Win32 セットアップ ユーティリティを 使って、次の項目を環境設定します。 [Microkernel Database エンジン] :[ファイル設定] : :7.x | 6.x [作成ファイルのバージョン]: 対象となる Btrieve データベースが Btrieve v7.x フォーマットの場合は 7.x を 選択し、対象となる Btrieve データベースが v6.x フォーマットの場合は 6.x を選択します。 DDF Ease を使った DDF の作成と保守 4-3 注意 警告![作成ファイルのバージョン]の設定はサーバ上で実行されるすべてのアプリ ケーションに影響します。製品アプリケーションが v6.x に対応して環境設定された サーバを必要とし、同時に v7.x に対応した DDF を作成する必要がある場合は、次の いずれかの対策をとってください。 (1)設定を変更する時刻をスケジューリングし、DDF Ease を動作させるためにサー バを再起動して、作業が終了したらサーバをリセットします。 (2)適切なソフトウェアを、アプリケーションを動作させない別のサーバにインス トールし、そこで作業を行います。こうすれば、アプリケーションと[作成ファイル のバージョン]の設定から影響を受けることがありません。 4-4 Pervasive.SQL User’s Guide DDF Ease の起動 ➤ DDF Ease を起動するには 1. [スタート]メニューの[プログラム]、 [Pervasive SQL 7]をクリック します。 2. [DDF Ease(Win32) ]をクリックして DDF Ease のメイン ウィンドウを 表示します。 図 4-1 DDF Ease のメイン ウィンドウ DDF Ease を使った DDF の作成と保守 4-5 次に、このメイン ウィンドウに用意されているメニューの一覧を示し ます。 表 4-1 DDF Ease メイン ウィンドウの機能 メニュー 内容 [ファイル] [ファイル]メニューを使用すると、次の機能を実行できます。 u 新しいデータベースの作成 u データベースのオープン u データベースのクローズ u データベースの保存 u データベースの削除 u データベースのチェック u データ辞書の変換 u データベース セキュリティの設定 u 現在のテーブル情報の印刷 u 現在のテーブル情報の印刷プレビュー u プリンタ オプションの設定 u DDF Ease の終了 [編集] [元に戻す] 、[切り取り] 、[コピー] 、および[貼り付け]機能を実行で きます。 [テーブル] このメニューを使用すると、テーブルの作成、テーブルの削除、および 現在のデータベースに含まれるシステム テーブル(X$File、X$Field、 X$Index)の表示を行うことができます。 [表示] このメニューには、ツール バーとステータス バーの表示を切り替える オプションが用意されています。 [ヘルプ] DDF Ease のオンライン ヘルプとバージョン情報を表示できます。DDF Ease には状況依存ヘルプも用意されています。 4-6 Pervasive.SQL User’s Guide 既存の Btrieve ファイルに対する DDF の作成 このセクションでは、既存の Btrieve ファイルに対するデータ辞書ファイル の作成プロセスを説明します。この例では、サンプルの Patients データベー スを作成し、Btrieve ファイルをデータベース辞書にコピーし、各 Btrieve ファイルに対するテーブル定義を作成します。Patients データベースには、 以下のテーブルが含まれます。 表 4-2 Patients データベース テーブルの例 同じ診療室に通う患者。 Patients Btrieve データ ファイルは patients.dta です。 各患者の予約。 Appointments Btrieve データ ファイルは patapp.dta です。 各患者に行われる処置。 Procedures Btrieve データ ファイルは patproc.dta です。 ➤ Patients データベースを作成するには 1. 図 4-2 ツールバーの をクリックするか、[ファイル]メニューの[データ ベースの新規作成]を選択します。 [データベースの新規作成]ダイア ログ ボックス(図 4-2)が表示されます。 [データベースの新規作成]ダイアログ ボックス 2. Windows 9x または Windows NT クライアントから DDF Ease を実行して いる場合は、 [DDF パス]フィールドに、データベースを配置するリ モート ディレクトリの名前を入力し、 「Patients」という名前を付けま す。 [データ ファイル パス]フィールドに、データ ファイルを配置する ディレクトリを指定することもできます。 DDF Ease を使った DDF の作成と保守 4-7 3. [OK]をクリックすると、データベースが作成されます。指定したディ レクトリが存在しない場合は、作成するよう要求するプロンプトが表示 されます。メッセージ ダイアログ ボックスの[OK]をクリックしま す。 注意 DDF パスは、データ辞書ファイル(file.ddf、index.ddf、field.ddf など)を配置する ディレクトリです。データ ファイル パスは、Btrieve データ ファイル(*.dta、*.mkd など)を配置するディレクトリです。 4. 製品 CD-ROM の ¥testdata ディレクトリから Patients ディレクトリに、以 下のファイルをコピーします。 PATIENTS.DTA PATAPP.DTA PATPROC.DTA 5. これらの Btrieve ファイルそれぞれに対するテーブル定義を作成します。 a.[DDF Ease]メイン ウィンドウで、Patients データベースをクリック し、 [テーブル]メニューの[作成]を選択します。[テーブル作成 ウィザード,ステップ 1]ダイアログ ボックス(図 4-3)で、[テー ブル名]フィールドに「Patients」と入力し、 [参照]ボタンを使用し て、新規作成した Patients データベース ディレクトリから Patients.dta を選択した後、 [次へ]をクリックします。 図 4-3 [テーブル作成ウィザード,ステップ 1]ダイアログ ]ダイアログ ボックス Btrieve ファイルが v6.0 フォーマットで、データベース辞書が v7.0 フォーマットであることを示すメッセージが表示されます。 4-8 Pervasive.SQL User’s Guide b.[はい]をクリックして、このメッセージを確認します。 [テーブル作成ウィザード,ステップ 2 - Patients]ダイアログ ボック スが表示されます。既存の Btrieve ファイルを使用してテーブルを作 成したので、DDF Ease はそのファイル内のデータについての情報を 推定できます。このダイアログ ボックスには、インデックスおよび 列の情報が表示されます。 c. 画面に表示されている列についての情報を使用して、ダイアログ ボックスの[検索された列]セクションに列名を指定します。 新規に入力された列名は[検索されたインデックス]および[列 データ]セクションに反映されます。 d. それぞれの列名を指定したら、 [次へ]をクリックします。 新しく入力した列名が、[列データ]セクションに表示されます。こ のダイアログ ボックスの詳細については、 [ヘルプ]をクリックす るか、F1 キーを押してください。 図 4-4 [テーブル作成ウィザード,ステップ 2 - Patients]ダイアログ ]ダイアログ ボックス DDF Ease を使った DDF の作成と保守 4-9 e. [テーブル作成ウィザード,ステップ 3 - Patients]ダイアログ ボック ス(図 4-6)が表示されます。 このダイアログ ボックスは、データ型が「Unknown」の列に対して、 列の定義を指定するよう要求します。Btrieve データ ファイルはバイ トの連なりで、中にはインデックスを含むものもあるため、列を分 割するかどうかを判断するために、データ内容を表示することもで きます。データ型が変更可能な状態にある列名をクリックし、次に [列の分割]をクリックすることによりデータを表示し、16 進およ び ASCII 形式のデータを実際に確認できます。[列の分割]ダイアロ グ ボックス(図 4-5)でデータを表示すると、データを認識するの が難しい場合があります。この例では、分割できる列は Unnamed_5 (後で「Address」 、「City」、 「State」という名前をそれぞれに付けま す)のみです。 [列の分割]ダイアログ ボックスでは、このデータが市や州などの 住所情報らしいということが分かります。 f. 該当する位置に分割のマークを付けることにより、列を 2 つのセク ションに分割します。この例では、1 と 26 と 41 の位置をマークし ます。完了したら[分割]をクリックします。 列の分割の詳細については、DDF Ease オンライン ヘルプの「列を分 割するのに役立つヒント」を参照してください。 図 4-5 [列の分割]ダイアログ ボックス g. 図 4-6 の情報を使用して、列の定義を完成します。 4-10 Pervasive.SQL User’s Guide 図 4-6 [テーブル作成ウィザード,ステップ 3 - Patients]ダイアログ ]ダイアログ ボックス h. 列の名前付けとデータ型の指定が完了したら、 [テーブルの作成]を クリックします。新しいテーブルが、メイン ウィンドウのディレク トリ ツリーに表示されます。デフォルトのビューには、 [Statistics] タブが表示されます。 [Columns]タブをクリックして、図 4-7 に示さ れているテーブル構造を表示します。Pervasive.SQL 7 でサポートさ れているデータ型の詳細については、 『SQL Language Reference』ま たは DDF Ease オンライン ヘルプ(任意のダイアログ ボックスから F1 キーを押すか、 [ヘルプ]をクリックします)を参照してくださ い。 DDF Ease を使った DDF の作成と保守 4-11 図 4-7 [DDF Ease]メイン ]メイン ウィンドウ− Patients データベースの例 6. 4-12 Pervasive.SQL User’s Guide PATAPP.DTA ファイルを使用して前のステップの手順を繰り返し、 Appointments に対するテーブルを作成します。[テーブル作成ウィザー ド,ステップ 2]ダイアログ ボックスで、図 4-8 のように列に名前を付 けます。 図 4-8 [テーブル作成ウィザード,ステップ 2 - Appointments]ダイアログ ]ダイアログ ボックス a.[次へ]をクリックします。[テーブル作成ウィザード,ステップ 3] ダイアログ ボックスが表示されます。 DDF Ease を使った DDF の作成と保守 4-13 図 4-9 [テーブル作成ウィザード,ステップ 3 - Appointments]ダイアログ ]ダイアログ ボックス b. 上の図では、 「Unnamed」のラベルが付いている列が 2 つしかない (列 5 および 7)ことに注意してください。データ型を指定するに は、列内のデータを確認する必要があります。列 5 については、そ の行をクリックして、 [列の分割]を選択します。 データに名字が含まれていることが分ります。つまり、これは char データ型です。[列の分割]ダイアログ ボックスの[キャンセル] をクリックし、列に「Doctor」という名前を付け、ドロップダウン リストから[char]を選択します。列 7 についても同様、 [列の分 割]ダイアログ ボックスでデータを確認します。8 の位置のすべて のデータには、16 進の 0F という明白なパターンがあります。 Appointments テーブルでは、この列の 9 の位置で図 4-10 のように分 割します。 4-14 Pervasive.SQL User’s Guide 図 4-10 [列の分割]ダイアログ ボックス c. 列 7 に AmtPaid という名前を付け、money データ型として指定しま す。列 8 についても、 [列の分割]をクリックしてデータを表示しま す。これは 4 バイトのデータ型で、16 進の値に数値のバリエーショ ンが見られるので、Date データ型であると考えられます。[キャンセ ル]をクリックし、この列に「DatePaid」という名前を付け、date データ型として指定します。[テーブルの作成]をクリックして、 Appointments テーブルを作成します。 7. PATPROC.DTA ファイルを使用して、Procedures テーブルに対しても、 前のステップを繰り返します。 [テーブル作成ウィザード,ステップ 2] ダイアログ ボックスで、列に「Code」という名前を付け、 [次へ]をク リックします。 a.[テーブル作成ウィザード,ステップ 3]ダイアログ ボックスで、 [Unnamed_1]をクリックし、次にこの列を分割するかどうかを判断 するために、 [列の分割]をクリックしてデータを表示します。[列 の分割]ダイアログ ボックスにデータを表示すると、データの先頭 の 15 バイトで、単語(この場合は処置名)を容易に認識できること が分ります。16 の位置が新しい文字セットの開始点なので、この位 置でデータを分割し、 [分割]をクリックします。 先ほどの列が[Unnamed_1]と[Unnamed_2]という 2 つの列に分 割されました。[Unnamed_1]に「ProcedureName」という名前を付 け、char データ型として指定します。 [Unnamed_2]には ASCII とし て印刷できない文字が含まれているため、データ型は Numeric、 Numericsa、Numericsts のいずれでもありません。この例では、デー タ型は money です。ダイアログ ボックス内のデータが、図 4-11 に示 されている情報と同じになっていることを確認します。 DDF Ease を使った DDF の作成と保守 4-15 図 4-11 [テーブル作成ウィザード,ステップ 3 - Procedures]ダイアログ ]ダイアログ ボックス b.[テーブルの作成]をクリックします。 8. 4-16 Pervasive.SQL User’s Guide これらの 3 つのテーブルを作成したら、このデータのさまざまなビュー を表示できます。データベース ディレクトリ ツリーの[Tables]を選択 すると、作成した 3 つのテーブルの概略が図 4-12 のように表示されま す。 図 4-12 [DDF Ease]メイン ]メイン ウィンドウ− Patients データベースの例 画面に表示しきれていない情報は、水平スクロール バーを使って見る ことができます。左側のデータベース ディレクトリ ツリーで特定の テーブル名をクリックして、タブ( [Statistics] 、[Columns]、 [Indexes] 、 [Data] )を選択すると、詳細情報が表示されます。 DDF Ease を使った DDF の作成と保守 4-17 リレーショナル データベースの作成 このセクションでは、SQL インタフェース(以前の Scalable SQL 4.x)を使 用した、小企業の顧客注文を記録する簡単なリレーショナル データベース を作成するための特定の方法を説明します。Customer Order データベースに は、以下のテーブルが含まれます。 ➤ Customers その企業の製品を購入する顧客。 Orders 顧客からの注文。 SalesRep 顧客注文を受ける営業担当。 SalesOffices 営業担当が勤務する営業所。 Customer Order データベースを作成するには 1. Order Entry データベースを作成します。 a. データベースを作成するには、 [ファイル]メニューの[データベー スの新規作成]を選択するか、ツールバーの新規ファイル アイコン をクリックします。 [データベースの新規作成]ダイアログ ボック スが表示されます。 図 4-13 DDF Ease の[データベースの新規作成]ダイアログ ボックス b. 図 4-14 に示されているように、メイン ツリー ビューに空のデータ ベースが表示されます。次に、Customers、Orders、SalesReps、およ び SalesOffices テーブルを定義します。 4-18 Pervasive.SQL User’s Guide 図 4-14 [DDF Ease]メイン ]メイン ウィンドウ− Customer Orders の例 2. Customers テーブルを作成します。 a. Customers テーブルを作成するには、[テーブル]メニューの[作成] を選択します。 「Customers」というテーブル名を入力し、 [次へ]を クリックします。 b. 列とインデックスを図 4-15 のように入力します。 DDF Ease を使った DDF の作成と保守 4-19 図 4-15 [テーブル作成ウィザード,ステップ 2 - Customers] ] 列名を入力するには、デフォルトの「Unnamed_1」をダブルクリッ クして強調表示し、新しい名前を入力します。この最初の列の下に 別の列を挿入するには、Tab キーまたは下矢印キーを押します。イ ンデックスを挿入するには、[インデックスの挿入ボタン]をクリッ クします。2 つ目以降のインデックスを挿入する際には、上記と同 じステップを繰り返します。 セグメント インデックスを挿入するには、最初に新しいインデック スを挿入し、次に[セグメントの追加]をクリックします。Scalable SQL 4 では、Autoinc を使用してセグメント インデックスを作成でき ます。しかし、この機能は Scalable SQL 3.01 ではサポートされてい ません。また、インデックス名を列名と同じにすることはできませ ん。つまり、これらの名前は一意である必要があります。 列およびインデックス情報を完成させるための特定の詳細について は、[テーブル作成ウィザード,ステップ 2]ダイアログ ボックスの [ヘルプ]をクリックしてください。最後に[テーブルの作成]をク リックして、テーブルを作成します。 c. テーブルを作成した後で、Company_Name にインデックスを追加す る場合は、メインのツリー ビューで Customers テーブルを選択し、 [Indexes]タブをクリックします。インデックス ビューの最終行を クリックして、下矢印を押します。 図 4-16 のように、変更を保存するまで、この行は青で強調表示され ます。「Comp_Name」というインデックス名を入力し、列名のリス トから「Company_Name」を選択します。ツールバーの[保存]を クリックします。 4-20 Pervasive.SQL User’s Guide 図 4-16 [DDF Ease]メイン ]メイン ウィンドウ−インデックス挿入の例 3. Orders テーブルを作成します。 Orders テーブルを作成するには、[テーブル]メニューの[作成]を選 択します。テーブル名として「Orders」と入力して、 [次へ]をクリッ クします。次に、列とインデックス情報を図 4-17 のように入力し、 [テーブルの作成]をクリックします。(ヘルプを使用する場合は F1 キーを押すか、このダイアログ ボックスの[ヘルプ]ボタンをクリッ クします。 ) DDF Ease を使った DDF の作成と保守 4-21 図 4-17 [テーブル作成ウィザード,ステップ 2 - Orders] ] 4. SalesRep テーブルを作成します。 SalesRep テーブルを作成するには、[テーブル]メニューの[作成]を 選択します。図 4-18 に示されているように情報を入力します。 4-22 Pervasive.SQL User’s Guide 図 4-18 [テーブル作成ウィザード,ステップ 2 - SalesRep] ] 5. SalesOffices テーブルを作成します。 a. SalesOffices テーブルを作成するには、[テーブル]メニューの[作 成]を選択します。図 4-19 に示されているように情報を入力しま す。 DDF Ease を使った DDF の作成と保守 4-23 図 4-19 [テーブル作成ウィザード,ステップ 2 - SalesOffices] ] b. 次の画面は、テーブルを追加した後のツリー ビューを示していま す。サブフォルダの一部は、列およびインデックスを表示するため に展開されています。情報の一部はこのウィンドウに表示されてい ません。タブの右にある水平スクロール バーを使用すると、ウィン ドウに表示しきれていない情報を見ることができます。 4-24 Pervasive.SQL User’s Guide 図 4-20 [DDF Ease]メイン ]メイン ウィンドウ− Order Entry データベースの例 6. データベースにデータを追加します。 現時点では、DDF Ease はデータベースへのデータの追加をサポートし ていません。ただし、Pervasive の SQLScope ユーティリティでステート メントを実行して、データベースに新しいデータを追加することができ ます。 (詳細については、第 9 章「SQLScope を使った SQL ステートメ ントの実行」を参照してください。 ) 例えば、営業所のデータを追加する場合、ここでは、INSERT ステート メントを使用して、データベースに営業所を追加します。 INSERT INTO SalesOffices (City, State, Country, Target) VALUES ('Austin', 'TX', 'USA', 800000) INSERT INTO SalesOffices (City, State, Country, Target) VALUES ('Boston', 'MA', 'USA', 510000) INSERT INTO SalesOffices (City, State, Country, Target) VALUES ('San Francisco', 'CA', 'USA', 500000) ここでは、INSERT ステートメントを使用して、営業担当 Andy Woodrif を Austin 営業所に追加します。 INSERT INTO SalesRep (FirstName, LastName, Office_ID, Quota, Sales) VALUES ('Andy', 'Woodrif', 1, 250000, 0) DDF Ease を使った DDF の作成と保守 4-25 SQLScope で、この情報を挿入して(各ステートメントの後に区切り記 号(;)を必ず入力してください) 、次に[実行]メニューの[全て実 行]を選択します。また、これらのステートメントを .sql ファイルに保 存して、このファイルを Orders データベースのディレクトリに書き込 む必要があります。 これらのステートメントの実行が終了したら、DDF Ease に戻って SalesOffices テーブルをクリックし、[Data]タブを選択して次のステッ プを実行します。 7. テーブル データを表示します。 a. DDF Ease は現在、各テーブルの最初の 100 行のデータを表示するよ うに制限されています。テーブル データを表示するには、ツリー ビューからテーブルを選択し、次に[Data]タブを選択します。 例えば、SQLScope を使用して追加した SalesOffices テーブルのデー タを表示するには、SalesOffices テーブルを選択して、次に[Data] タブを選択します。テーブル データを変更してビューを更新する場 合は、別のテーブルを選択した後にこのテーブルを再び選択し、 データおよびテーブル定義を再読み取りします。 図 4-21 は、SalesOffices テーブルに追加したデータを表示していま す。 4-26 Pervasive.SQL User’s Guide 図 4-21 [DDF Ease]メイン ]メイン ウィンドウ−追加データの表示例 DDF Ease を使った DDF の作成と保守 4-27 4-28 Pervasive.SQL User’s Guide 第5章 Pervasive.SQL データベース リソースのモニタ この章は、次のセクションから構成されています。 u 5-2 ページの「モニタ ユーティリティの概要」 u 5-3 ページの「モニタ ユーティリティの起動」 u 5-5 ページの「モニタ ユーティリティ オプションの設定」 u 5-6 ページの「MicroKernel リソースのモニタ」 u 5-16 ページの「Scalable SQL リソースのモニタ」 Pervasive.SQL データベース リソースのモニタ 5-1 モニタ ユーティリティの概要 モニタ ユーティリティを使用すると、Pervasive.SQL の動作をモニタするこ とができます。モニタ ユーティリティにより、データベースの管理とアプ リケーション プログラミングの診断に役立つ情報が提供されます。 注意 モニタ ユーティリティは、Pervasive.SQL 7 以降にリリースされたクライアント/ サーバでのみ動作します。このユーティリティは、Pervasive.SQL ワークステーショ ン製品には含まれておらず、クライアントのリクエスタから接続することはできませ ん。 モニタ ユーティリティおよびサポートされるプラットフォームのバージョ ンを次の表に示します。 モニタ ユーティリティ サポートされるプラットフォーム Win16 Windows NT サーバ Windows 3.x、Windows 9x、 Windows NT クライアント Win32 Windows NT サーバ Windows 9x、 Windows NT クライアント OS/2 クライアントで実行できる OS/2 バージョン(サーバ版のみ)もありま す。ただし、この章では、Windows バージョンの操作方法についてのみ説 明します。 5-2 Pervasive.SQL User’s Guide モニタ ユーティリティの起動 モニタ ユーティリティには、指定した時点でのサーバの動作が表示されま す。 ➤ Windows 3.x または Windows 9x/NT から Win16 または Win32 バージョンの モニタ ユーティリティを起動するには u Windows 9x/NT では、 [スタート]ボタンをクリックし、 [Pervasive SQL 7]をポイントして、[Monitor (Win16)]または[Monitor (Win32)]をク リックします。 Pervasive.SQL モニタ ユーティリティのメイン ダイアログが表示されま ユーティリティ す。 図 5-1 モニタ ユーティリティのメイン ダイアログ モニタ ユーティリティを起動すると、デフォルトの設定でローカル サーバに接続されます。しかし、リモート サーバに接続して、リモー ト サーバ エンジンのリソースをモニタすることもできます。 注意 モニタ ユーティリティ ウィンドウ内にダイアログが表示されていると、リモート サーバとの接続または接続解除を行うことができません。操作を行う前に、まずダイ アログを閉じてください。 Pervasive.SQL データベース リソースのモニタ 5-3 ➤ リモート サーバに接続するには 1. [オプション]メニューの[接続]をクリックします。次の図 5-2 のよ うな、 [リモートサーバ接続]ダイアログが表示されます。 図 5-2 [リモートサーバ接続]ダイアログ 2. [サーバ名]ボックスにサーバ名を入力します。 3. 5-4 Pervasive.SQL User’s Guide サーバとの接続を解除するには、 [オプション]メニューの[切断]を クリックします。 モニタ ユーティリティ オプションの設定 ➤ モニタ ユーティリティのオプションを設定するには 1. [オプション]メニューの[設定]をクリックします。現在の設定を含 む[Monitor の設定]ダイアログが表示されます。 図 5-3 [Monitor の設定]ダイアログ 2. [終了時に設定を保存] 次のオプションを設定することができます。 このチェック ボックスをオンにすると、モニタ ユーティリティの終了時 にすべての環境設定を自動的に保存することができます。保存されるの は、このダイアログで行った設定と、さまざまなダイアログに含まれる [自動リフレッシュ]チェック ボックスの設定です。 [終了時にウィンドウ レイアウトを保存] このチェック ボックスをオンにすると、すべてのオープン ウィンドウの 状態(オープンまたはクローズ)と画面上の位置を自動的に保存すること ができます。次にモニタ ユーティリティを起動すると、前回オープンし ていたウィンドウが前回と同じ位置に自動的に表示され、すぐにローカル ファイル サーバのモニタを開始できます。このオプションにより、いつ も使用している画面レイアウトを容易に再現できます。 [リフレッシュ レート ( 秒単位 )] 画面を更新する頻度を指定します。リフレッシュ レートは秒単位で指定 します。デフォルトの設定は 4 です。このボックスには整数だけを入力で きます。 3. [OK]をクリックして設定を保存するか、 [キャンセル]をクリックし て設定を保存しないでダイアログを閉じます。 Pervasive.SQL データベース リソースのモニタ 5-5 MicroKernel リソースのモニタ ここでは、MicroKernel をモニタするためのオプションについて説明します。 u 「画面リフレッシュ オプションの設定」 u 5-6 ページの「アクティブ ファイルの表示」 u 5-10 ページの「ユーザ情報の表示」 u 5-12 ページの「MicroKernel リソースの使用状況の表示」 u 5-14 ページの「MicroKernel 通信統計情報の表示」 画面リフレッシュ オプションの設定 モニタ ユーティリティの各ダイアログの情報は、次のように自動または手 動で更新することができます。 u 自動的な更新: [自動リフレッシュ]チェック ボックスをオンにしま す。 [Monitor の設定]ダイアログ( [オプション]メニューの[設定] をクリックして表示します。 )の[リフレッシュレート ( 秒単位 )]ボッ クスで指定した間隔でダイアログの情報が自動的に更新されます。 u 手動による更新: [リフレッシュ]ボタンをクリックします。 アクティブ ファイルの表示 ➤ アクティブな MicroKernel ファイルを表示するには u [MicroKernel]メニューの[アクティブ ファイル]をクリックします。 5-7 ページの図 5-4 のような[MicroKernel アクティブ ファイル]ダイア ログが表示されます。このダイアログには、MicroKernel に関連するア クティブ ファイルがすべて表示されます。 5-6 Pervasive.SQL User’s Guide 図 5-4 [MicroKernel アクティブ ファイル]ダイアログ ダイアログの左上隅には[アクティブな MicroKernel ファイル]リスト があります。このスクロール リストには、オープンしているすべての ファイルのフル パスがアルファベット順に表示されます。 ➤ 特定のファイルに関する詳細情報を表示するには u リスト内で目的のファイルを選択します。 [MicroKernel アクティブファイル]ダイアログの右上隅には、 [選択さ れたファイルのハンドル]リストがあります。このスクロール リスト には、選択したファイルに関連するアクティブ ハンドル(ユーザ)が 表示されます。それぞれのハンドルは、ユーザ名(通常は、ユーザのロ グイン ID)またはエンジンのクライアント(ユーザ)リストへのイン デックスによって表されます。 ➤ 特定のハンドルに関する詳細情報を表示するには u [選択されたファイルのハンドル]リスト内で目的のハンドルを選択し ます。 Scalable SQL エンジンのハンドルは ssql:scalable sql と表示され ます。Database Services クライアントのハンドルは ssql:database services と表示されます。Scalable SQL ログインと Database Services ログインはそれぞれ ssql:username、ssql:sessionNumber と表 示されます。各ハンドルはエージェント ID、つまりそのセッションを 起動したアプリケーションを識別する 2 文字のコードを持ちます。 Pervasive.SQL データベース リソースのモニタ 5-7 表 5-1 に、Pervasive.SQL コンポーネントによって使用されるエージェ ント ID の一覧を示します。 表 5-1 エージェント ID エージェント アプリケーションまたはコンポーネント ID BT Btrieve Interface のメンテナンス ユーティリティ(BUTIL) DE Database Services クライアント DC Database Services ログイン DR DOS クライアント リクエスタ ML MicroKernel ロギングとロール フォワード NR Windows 9x および Windows NT クライアント リクエスタ NX Scalable SQL のメンテナンス ユーティリティ(SQLUTIL) OR OS/2 クライアント リクエスタ PU Pervasive.SQL ユーティリティ RU RI ユーティリティ(RIUTIL) SC Scalable SQL ログイン SE Scalable SQL エンジン WR Windows クライアント リクエスタ [ファイル情報]ボックスには、選択したファイルの詳細情報が表示さ れます。 [ハンドル情報]ボックスには、選択したハンドルの詳細情報 が表示されます。 ファイル情報 [ファイル情報]ボックスには、選択したファイルに関する次の情報が表示 されます。 [ページサイズ] ファイル内の各ページのサイズをバイト単位で示します。 [読込み専用フラグ] オペレーティング システムによって、対象となるファイルに読み込み専用 フラグが設定されているかどうかを示します。 [レコードロック] 選択したファイルに対するアクティブ ハンドルのいずれかが、レコード ロックを行っているかどうかを示します。どのアプリケーションもロック されたレコードを読み込むことはできますが、レコードを変更または削除 できるのは、ロックを行ったアプリケーションのみです。ファイルをオー プンしたアプリケーションがレコードを更新しているかぎり、レコード ロックは存在し続けます。 [Yes]は 1 つまたは複数のレコード ロックが ファイルに適用されていることを示します。 [No]はレコードがロックさ れていないことを示します。 5-8 Pervasive.SQL User’s Guide [トランザクション ロック] 選択したファイルに対するアクティブ ハンドルのいずれかが、トランザク ション ロックを行っているかどうかを示します。トランザクション ファイ ル ロックは、ファイルをオープンしたアプリケーションがトランザクショ ンを処理している間のみ存在します。 ハンドル情報 [ハンドル情報]ボックスには選択したハンドルに関する次の情報が表示さ れます。 [接続番号] クライアントのネットワーク接続番号を表示します。クライアントがネッ トワーク接続されていない場合、このフィールドには[NA](適用外)と 表示されます。 [タスク番号] サーバ、Windows クライアント、または OS/2 クライアントから起動され たプロセスに対するプロセス指定のタスク番号を表示します。プロセスが DOS クライアントから起動された場合、このフィールドには通信プロトコ ル ソケット番号が表示されます。 [サイト] ユーザ プロセス(ローカルまたはリモート)のロケーションを示します。 [ネットワーク アドレス] 呼出し元プロセスのネットワーク上のロケーションを示します。呼出し元 プロセスが SPX の場合は、S: 65666768 00000000001 のように、ネットワー ク ノード/ネットワーク アドレスの先頭に S という文字が表示されます。 呼出し元プロセスが TCP/IP の場合は、T: 180.150.1.24 のように、IP アドレ スの先頭に T という文字が表示されます。 [オープンモード] アプリケーションがファイルの指定したハンドルをオープンするために使 用した方法を示します。次に、有効なオープン モードの一覧を示します。 ノーマル−ファイルをオープンしたアプリケーションはノーマル共有読み 込み/書き込みアクセスを行います。 アクセラレイティド−ファイルをオープンしたアプリケーションは共有読 み込み/書き込みアクセスを行います。 リードオンリー−ファイルをオープンしたアプリケーションは読み込み専 用アクセスを行います。ファイルを変更することはできません。 エクスクルーシブ−ファイルをオープンしたアプリケーションは排他アク セスを行います。他のアプリケーションでは、呼出し元のアプリケーショ ンがファイルを閉じるまで、そのファイルをオープンできません。 ベリファイ−ファイルをオープンしたアプリケーションは、オペレーティ ング システムがすべての書き込みオペレーションをファイルに格納してい ることを確認します。 また適用できる場合は、すべてのオープン モードが非トランザクションま たは共有ロックであるかどうかも示します。 Pervasive.SQL データベース リソースのモニタ 5-9 [レコードロックタイプ] ハンドルによって現在保持されているレコード ロックのタイプを表示しま す。表示されるレコード ロックのタイプには、 [シングル]、 [マルチ]、 [なし]があります。 シングルレコード ロックでは、ユーザは 1 度に 1 つのレコードのみをロッ クできます。マルチレコード ロックでは、1 度に複数のレコードをロック することができます。 [ロック状態] このハンドルに対するロックにより、ユーザが待機しているかどうかを示 します。 [レコードロックウェイト]、 [ファイルロックウェイト]、 [なし] のいずれかが表示されます。 [トランザクション タイプ] ハンドルによって現在保持されているトランザクション ロックの状態を表 示します。トランザクションのタイプとして、 [排他]、 [並行]、 [なし]の いずれかが表示されます。 ユーザ情報の表示 各ユーザに対するファイル ハンドルだけではなく、現在のユーザとファイ ルの一覧を表示することもできます。 ➤ MicroKernel のユーザ情報を表示するには u [MicroKernel]メニューの[アクティブ ユーザ]をクリックします。 5-11 ページの図 5-5 のような、 [MicroKernel アクティブ ユーザ]ダイア ログが表示されます。 5-10 Pervasive.SQL User’s Guide 図 5-5 [MicroKernel アクティブ ユーザ]ダイアログ ダイアログの左上隅には、 [アクティブな MicroKernel ユーザ]リスト があります。このスクロール リストにはアクティブ ユーザの名前がア ルファベット順に表示されます。それぞれのユーザは、ユーザ名(通常 は、ユーザのログイン ID)またはエンジンのクライアント(ユーザ) リストへのインデックスによって表されます。 ➤ 特定のユーザに関する詳細情報を表示するには u リスト内で目的のユーザを選択します。 それぞれのクライアントは、ユーザ名(通常は、ユーザのログイン ID) またはエンジンのクライアント(ユーザ)リストへのインデックスに よって表されます。表 5-1 に、Pervasive.SQL コンポーネントによって 使用されるエージェント ID の一覧を示します。 [MicroKernel アクティブユーザ]ダイアログの右上隅には、 [選択され たユーザのハンドル]リストがあります。このスクロール リストには、 選択したユーザに関連するアクティブ ハンドル(ファイル)が表示さ れます。MicroKernel は、ユーザがファイルをオープンするたびに 1 つ のハンドルを作成します。このため、1 人のユーザが同じファイルに対 して複数のハンドルを持つことがあります。 Pervasive.SQL データベース リソースのモニタ 5-11 ➤ 特定のハンドルに関する詳細情報を表示するには リスト内で目的のハンドルを選択します。 u [ユーザ情報]ボックスには、選択したユーザ ファイル ハンドルに対す る次の詳細情報が表示されます( [接続番号]、 [タスク番号]、 [サイ ト] 、[ネットワークアドレス]と[ハンドル情報]ボックスについて は、 「ハンドル情報」を参照してください) 。 [使用中ロック数] ユーザが現在使用しているロックの数を示します。 [トランザクション タイプ] ユーザが現在保持しているトランザクション ロックのタイプを表示しま す。トランザクションのタイプとして、 [排他]、 [並行]、 [なし]のいずれ かが表示されます。 [読込みレコード] ファイルをオープンした後でユーザが読み込んだレコードの数を表示しま す。 [挿入レコード数] ユーザが挿入したレコードの数を表示します。 [削除レコード数] ユーザが削除したレコードの数を表示します。 [更新レコード数] ユーザが更新したレコードの数を表示します。 [ディスクアクセス数] ユーザがディスク アクセスを必要とした回数を示します。オープンしたば かりのファイルでは、ディスク アクセス情報はまったく表示されないはず です。 [キャッシュアクセス数] ユーザがキャッシュ アクセスを必要とした回数を表示します。 現在のユーザの削除 ➤ ユーザを削除するには u ユーザ名を選択して、 [現ユーザの削除]ボタンをクリックします。現 在のユーザを削除すると、 [アクティブな MicroKernel ユーザ]リスト からそのユーザ名が削除され、そのユーザの通信サーバとの接続が解除 されます。 u [全ユーザの削除]ボタンをクリックして現在の MicroKernel ユーザをす べて削除することもできます。 MicroKernel リソースの使用状況の表示 ➤ MicroKernel リソースの使用状況を表示するには 1. [MicroKernel]メニューの[リソース使用状況]をクリックします。下 の図 5-6 のような、[MicroKernel リソース使用状況]ダイアログが表示 されます。 5-12 Pervasive.SQL User’s Guide 図 5-6 [MicroKernel リソース使用状況]ダイアログ このダイアログには、ロード以降に MicroKernel によって使用されたリ ソースの総量を表示できます。 [MicroKernel リソース使用状況]ダイア ログには、それぞれのリソースについての情報が表示されます。 w [現在値]−フィールドの現在値を示します。 w [ピーク値] − MicroKernel の起動後に記録されたフィールドの最高値 を示します。 w [最大値]−フィールドで許可されている最大値を示します。 [ファイル数] アクティブなファイルの数を示します。このフィールドの最大値は、 セットアップ ユーティリティで設定します(3-37 ページの「 [オープ ン ファイル数] 」を参照してください)。 [ハンドル数] アクティブなハンドルの数を示します。MicroKernel は、ユーザがファ イルをオープンするたびに 1 つのハンドルを作成します。このため、1 人のユーザが同じファイルに対する複数のハンドルを持つこともあり ます。このフィールドの最大値は、セットアップ ユーティリティで設 定します。 (3-38 ページの「 [ハンドル数]」を参照してください)。 [クライアント数] MicroKernel にアクセスするクライアントの数を示します。1 つのワー クステーションがエンジンに同時にアクセスする複数のクライアント を持つ場合があります。このフィールドの最大値は、セットアップ ユーティリティで設定します(3-47 ページの「[アクティブ クライア ント数] 」を参照してください)。 [ワーカスレッド数] MicroKernel の並行プロセスの数を示します。このフィールドの最大値 は、セットアップ ユーティリティで設定します(3-47 ページの「 [I/O スレッド数] 」を参照してください)。 Pervasive.SQL データベース リソースのモニタ 5-13 [使用中ライセンス数] ライセンス契約書で決められている Btrieve インタフェースのユーザ数 を示します。この場合[最大値]には、ライセンス契約書で許諾され ているユーザ数が表示されます。 [トランザクション数] トランザクションの数を示します。このフィールドの最大値に制限は ありません。 [ロック数] レコード ロックの数を示します。このフィールドの最大値に制限はあ りません。 MicroKernel 通信統計情報の表示 ➤ MicroKernel 通信統計情報を表示するには 1. [MicroKernel]メニューの[通信統計情報]をクリックします。下の図 5-7 のような、[MicroKernel 通信統計情報]ダイアログが表示されます。 このダイアログには、ロード以降に通信サーバによって使用されたネッ トワーク リクエスト数、通信スレッド数、およびセッション数が表示 されます。 図 5-7 [MicroKernel 通信統計情報]ダイアログ [MicroKernel 通信統計情報]ダイアログには、いくつかの通信リソース について次の統計情報が表示されます。 w [現在値]−フィールドの現在値を示します。 5-14 Pervasive.SQL User’s Guide w [ピーク値]−通信マネージャの起動後に記録されたフィールドの最 高値を示します。 w [最大値]−フィールドで許可されている最大値を示します。 [MicroKernel 通信統計情報]ダイアログでは、次の通信リソースの統計 情報をモニタできます。 [処理済リクエスト総数] 通信マネージャが処理している、ワークステーションまたはリモート サーバベース アプリケーションからのリクエストの数を示します。 [SPX 処理済リクエスト数] 通信マネージャが処理している、ワークステーションまたはリモート サーバベース アプリケーションからの SPX リクエストの数を示しま す。 [TCP/IP 処理済 リクエスト数] 通信マネージャが処理している、ワークステーションまたはリモート サーバベース アプリケーションからの TCP/IP リクエストの数を示し ます。 [合計値]−通信マネージャのロード後に処理されたリクエストの総数 を示します。 [増加値]−[ MicroKernel 通信統計情報]ダイアログを最初に表示し た後のリクエストの数を示します。この値をゼロにリセットするには、 [増加値をリセット]ボタンをクリックします。 [通信スレッド数] MicroKernel が現在処理しているリモート リクエストの数を示します。 ローカル リクエストはこの統計情報には含まれていません。処理され ているリモート スレッドとローカル スレッドの総数については、 [MicroKernel リソース使用状況]ダイアログを参照してください。こ のフィールドの最大値は、セットアップ ユーティリティで設定します ([通信スレッド数]オプション) 。 通信スレッドはモニタ ユーティリティのリクエストを処理するために も使用されます。このため、現在の通信スレッド数にはこの数も含ま れています。これが正常な状態です。 [リモートセッション数] 通信マネージャに接続されているリモート クライアントの数を示しま す。このフィールドの最大値は、セットアップ ユーティリティで設定 します( [セッション数]オプション)。 [SPX リモート セッション数] SPX 経由で通信マネージャに接続されているリモート クライアントの 数を示します。 [TCP/IP リモート セッション数] TCP/IP 経由で通信マネージャに接続されているリモート クライアント の数を示します。 Pervasive.SQL データベース リソースのモニタ 5-15 Scalable SQL リソースのモニタ ここでは、Scalable SQL エンジンをモニタするためのオプションについて説 明します。 u 「画面リフレッシュ オプションの設定」 u 5-16 ページの「アクティブ Scalable SQL セッションの表示」 u 5-20 ページの「Scalable SQL リソースの使用状況の表示」 u 5-21 ページの「Scalable SQL 通信統計情報の表示」 画面リフレッシュ オプションの設定 モニタ ユーティリティの各ダイアログの情報は、次のように自動または手 動で更新することができます。 u 自動的な更新: [自動リフレッシュ]チェック ボックスをオンにしま す。 [Monitor の設定]ダイアログ( [オプション]メニューの[設定] をクリックして表示します。 )の[リフレッシュレート ( 秒単位 )]ボッ クスで指定した間隔でダイアログの情報が自動的に更新されます。 u 手動による更新: [リフレッシュ]ボタンをクリックします。 アクティブ Scalable SQL セッションの表示 ➤ アクティブな Scalable SQL セッションを表示するには u [SQL]メニューの[アクティブセッション]をクリックします。5-17 ページの図 5-8 のような[Scalable SQL アクティブ セッション]ダイア ログが表示されます。 5-16 Pervasive.SQL User’s Guide 図 5-8 [Scalable SQL アクティブセッション]ダイアログ このダイアログには、アクティブな Scalable SQL セッションに関する情 報とともに、選択したセッションが現在アクセスしているビューに関す る情報も表示されます。データベース名または辞書のロケーションのい ずれかにより、セッションのリストにフィルタを設定することができま す。 Pervasive.SQL データベース リソースのモニタ 5-17 アクティブ セッションのフィルタ設定 ➤ アクティブなセッションにフィルタを設定するには 1. [ログインアクセスでセッションをフィルタする]チェック ボックスを オンにします。 これで、1 つのデータベース名または辞書のいずれかに対応するすべて のセッションを選択できるようになります。 2. [データベース名]リストでデータベース名をクリックするか、[辞書ロ ケーション]リストで辞書のロケーションをクリックするだけで、対応 するアクティブなセッションが[アクティブ セッション]リストに表 示されます。 ([辞書ロケーション]リストにはフル パスがアルファ ベット順に表示されます。 ) 3. [ログインアクセスでセッションをフィルタする]チェック ボックスを オフにすると、ダイアログにはすべてのセッションが表示され、 [デー タベース名]および[辞書ロケーション]リストは使用できなくなりま す。 セッション情報 [アクティブセッション数]ボックスの上部には、[アクティブセッション 数]リストで現在選択されているユーザ名に対するアクティブな Scalable SQL セッションの数が表示されます。フィルタを適用すると、表示される アクティブ セッションの数は指定したデータベース名または辞書にだけ関 連する値になります。 (セッションは、アプリケーションまたはタスクが データベースにログインするときに作成されます。 ) [セッション情報]ボックスには、[アクティブセッション数]リストで現在 選択しているセッションに関する次の情報が表示されます。 [ログイン時刻] ログイン オペレーションを介してセッションが確立された日付と時刻を示 します。日付と時刻は月/日、時:分:秒の形式で表示されます。 [ログインアクセス] このセッションのログインに対応するアクセス パスを表示します。この フィールドには、 [データベース名]または[辞書ロケーション]のいずれ かが表示されます。 [データベース名] ユーザがデータベース名または名前付きデータベースへの辞書パスを使っ てこのセッションにログインしている場合、データベース名を表示します。 [辞書ロケーション] ユーザが名前のないデータベースまたは複数の名前を持つデータベースへ の辞書パスを使ってこのセッションにログインしている場合、辞書のロ ケーションを表示します。ユーザがデータベース名または名前付きデータ ベースへの辞書パスを使ってログインしている場合、このフィールドには 何も表示されません。 5-18 Pervasive.SQL User’s Guide [互換モード] 現在のセッションで使用されている互換モードを表示します。互換モード には、 [3.01](Scalable SQL v3.01 との互換性を維持する)と[4.0]の 2 つ があります。互換モードの詳細については、 『新機能』を参照してくださ い。 [整合性の設定] Pervasive.SQL がデータベースに対して強制的に整合性制御(セキュリ ティ、参照整合性、およびトリガ)を実行しているかどうかを示します。 強制的に整合性制御を実行するオプションの使用については、3-14 ページ の「[ 名前付きデータベースの管理]」を参照してください。 [バウンド] 現在のセッションによってアクセスされているデータベースがバウンド データベースであるかどうかを示します。バウンドデータベースの詳細に ついては、 『Scalable SQL Design Guide』を参照してください。 [現オペレーション] このセッションで最初に呼出した SQL API 関数を示します。 [MicroKernel コール数] このセッションが MicroKernel に対して実行した関数呼出しの数を示しま す。 [アクティブ トランザクション] このセッションが現在トランザクション内にあるかどうかを示します。 [ネットワークアドレス] 呼出し元プロセスのネットワーク上のロケーションを識別します。呼出し 元プロセスが SPX の場合は、S: 65666768 00000000001 のように、ネット ワーク ノード/ネットワーク アドレスの先頭に S という文字が表示されま す。呼出し元プロセスが TCP/IP の場合は、T: 180.150.1.24 のように、IP ア ドレスの先頭に T という文字が表示されます。ローカル アクセスの場合、 このフィールドには[ローカル]と表示されます。 [ビュー数] アクティブなビューの数を示します。アクティブ ビューの名前はリスト ボックスに表示されます。 ビュー情報 [ビュー情報]ボックスには、選択したセッションがアクセスしている、す べてのビューに関する現在の情報が表示されます。このボックスには、 [ビュー数]で現在選択しているビューに関する次の情報が表示されます。 [テンポラリソート] 対象となるビューに対してテンポラリ ソート順が適用されているかどうか を示します。 [明示的ロック] 対象となるビューに対して明示的ロックが発行されているかどうかを示し ます。 [テーブル名] ビューに含まれるテーブルの数とそれぞれのテーブルの名前を一覧表示し ます。 Pervasive.SQL データベース リソースのモニタ 5-19 セッション リストの更新 ➤ セッション リストを定期的に更新するには u [自動リフレッシュ]チェック ボックスをオンにしているかどうかに関 係なく、 [セッションリストリフレッシュ]ボタンをクリックします。 Scalable SQL セッションの削除 ➤ Scalable SQL セッションを削除するには u [セッションの削除]ボタンをクリックします。削除したセッションは Scalable SQL エンジンにより抹消されます。 Scalable SQL リソースの使用状況の表示 ➤ Scalable SQL リソースの使用状況を表示するには 1. [SQL]メニューの[リソース使用状況]をクリックします。下の図 5-9 のような[ Scalable SQL リソース使用状況]ダイアログが表示されま す。 図 5-9 [Scalable SQL リソース使用状況]ダイアログ [ Scalable SQL リソース使用状況]ダイアログには、それぞれのリソー スについて次の情報が表示されます。 w [現在値]−フィールドの現在値を示します。 w [ピーク値]− Scalable SQL エンジンの起動後に記録されたフィール ドの最高値を示します。 w [最大値]−フィールドで許可されている最大値を示します。 5-20 Pervasive.SQL User’s Guide 次のフィールドの水平棒グラフには、最大値に対する現在およびピーク 時の値を示すものがあります。最大値に制限がない場合、モニタ ユー ティリティでは、棒グラフは表示されません。 [セッション数] アクティブな Scalable SQL セッションの総数を示します。それぞれの セッションは 1 つのログイン オペレーションに対応しています。 [辞書数] 少なくとも 1 つのアクティブ セッションと関連する辞書の数を示しま す。このフィールドの最大値に制限はありません。 [ビュー数] アクティブなビューの総数を示します。このフィールドの最大値に制 限はありません。 [アクティブリクエスト数] 処理されている現在のリクエストの数を示します。 [ログイン総数] Scalable SQL エンジンがロードされてからのセッションの総数を示し ます。それぞれのログイン オペレーションは 1 つのセッションに対応 しています。 Scalable SQL 通信統計情報の表示 ➤ Scalable SQL 通信統計情報を表示するには u [SQL]メニューの[通信統計情報]をクリックします。 [ Scalable SQL 通信統計情報]ダイアログが表示されます。 図 5-10 [Scalable SQL 通信統計情報]ダイアログ Pervasive.SQL データベース リソースのモニタ 5-21 このダイアログには次の情報が表示されます。 [処理済リクエスト総数] Scalable SQL の通信コンポーネントがロード後に処理した SQL リクエ ストの総数を示します。 [増加値]には、このダイアログを最初に表示 してから、または増加値をリセットしてからのカウントが表示されま す。 [SPX 処理済リクエスト数] 通信マネージャが処理している、ワークステーションまたはリモート サーバベース アプリケーションからの SPX リクエストの数を示しま す。 [TCP/IP 処理済 リクエスト数] 通信マネージャが処理している、ワークステーションまたはリモート サーバベース アプリケーションからの TCP/IP リクエストの数を示し ます。 [合計値]−通信マネージャのロード後に処理されたリクエストの総数 を示します。 [増加値]−[Scalable SQL 通信統計情報 ]ダイアログを最初に表示し た後のリクエストの数を示します。この値をゼロにリセットするには、 [増加値をリセット]ボタンをクリックします。 Scalable SQL エンジンが現在処理しているリモート リクエストの数を 示します。 [通信スレッド数] また、処理されているローカル リクエストはこの統計情報には含まれ ていません。処理されているスレッドの総数(リモートおよびローカ ル)については、 「[Scalable SQL リソース使用状況]ダイアログ」を 参照してください。 通信スレッドはモニタ ユーティリティのリクエストを処理するために も使用されます。これが正常な状態です。 [リモートセッション総数] 通信コンポーネントに接続されているリモート ワークステーションの 数を示します。 [SPX リモートセッション数] SPX 経由で通信マネージャに接続されているリモート クライアントの 数を示します。 TCP/IP 経由で通信マネージャに接続されているリモート クライアント の数を示します。 [TCP/IP リモート セッション数] 増加値のリセット ➤ 増加値をゼロにリセットするには u [増加値をリセット]ボタンをクリックします。 5-22 Pervasive.SQL User’s Guide 第6章 ファンクション エグゼキュータを 使った Btrieve オペレーションのテスト この章では、次のトピックについて説明します。 u 6-2 ページの「ファンクション エグゼキュータの概要」 u 6-3 ページの「ファンクション エグゼキュータ ユーティリティの起動」 u ファンクション エグゼキュータ メイン ウィンドウの概要 u u 6-11 ページの「キー バッファまたはデータ バッファの編集 (OS/2 (サーバ版)クライアントのみ)」 6-12 ページの「オペレーションの実行」 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-1 ファンクション エグゼキュータの概要 16 ビットのファンクション エグゼキュータは、Pervasive.SQL サーバおよび ワークステーション製品が対象とする Win16、Win32、および OS/2 の 3 つ のプラットフォームで実行することができます。この対話型ユーティリティ を使用すると、Btrieve オペレーションがどのように実行結果を返すかが確 認できます。また、Btrieve オペレーションを 1 度に 1 つずつ実行できるた め、アプリケーション開発者はファンクション エグゼキュータを使って、 Btrieve アプリケーションのオペレーションをシミュレートし、プログラム のテストやデバッグに利用することができます。 ファンクション エグゼキュータは本来、アプリケーション開発者向けの ツールです。このため、この章では Btrieve オペレーションの基本的な知識 を前提にしています。Btrieve オペレーションの詳細については、 『Btrieve Programmer’s Reference』を参照してください。 6-2 Pervasive.SQL User’s Guide ファンクション エグゼキュータ ユーティリティの起動 ➤ Win16 プラットフォームでファンクション エグゼキュータ ユーティリティ を起動するには u [PVSW/Bin]グループにある[ファンクションエグゼキュータ]アイコ ンをダブルクリックします。 ➤ Win32 プラットフォームでファンクション エグゼキュータ ユーティリティ を起動するには 1. [スタート]ボタンをクリックし、[プログラム] 、[Pervasive SQL 7]を ポイントします。 2. [Function Executor (Win16)]をクリックします。メイン ウィンドウ(図 6-1)が表示されます。 ➤ OS/2(サーバ版のみ)クライアントでファンクション (サーバ版のみ)クライアントでファンクション エグゼキュータ ユー ティリティを起動するには 1. [スタート]ボタンをクリックし、[Pervasive SQL 7]をポイントしま す。 2. [Function Executor (Win16)]をクリックします。メイン ウィンドウ(図 6-2)が表示されます。 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-3 図 6-1 ファンクション エグゼキュータのメイン ウィンドウ 6-4 Pervasive.SQL User’s Guide 図 6-2 ファンクション エグゼキュータのメイン ウィンドウ ) (OS/2 バージョン(サーバ版のみ) ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-5 ファンクション エグゼキュータ メイン ウィンドウの概要 表 6-1 に Win16 バージョンのメイン ウィンドウに用意されているコント ロールの一覧を示します。一部のコントロールは Btrieve 関数のパラメータ に対応しています。 表 6-1 Win16 に対応したファンクション エグゼキュータのコントロール コントロール [ファイル] 説明 オープンしているすべてのデータ ファイルのフル パスを含むリストで、現在の オープン ファイルを表示します。このボックスを使って、オープン ファイルの 間を移動することはできますが、ファイルをオープンすることはできません。 ファイルをオープンする方法については、6-12 ページの「ファイルのオープ ン」を参照してください。 このコントロールはポジション ブロック パラメータに対応します。各ファイル 名はポジション ブロックを表しているため、ファイルが複数回にわたってオー プンされている場合、そのファイル名はリスト内に重複して表示されます。 [トランザクション] 現在のオペレーションがトランザクション内で実行されるかどうか、またその トランザクションのタイプを示します。 [排他]−排他トランザクション [並行]−並行トランザクション [並行 +500]−[ロックバイアスの変更 (+500)]チェック ボックスがオンに なっている並行トランザクション オペレーション [現在] 現在のオペレーション コードとそのバイアス(もしあれば)を指定します。デ フォルトの設定は 0 です。Btrieve オペレーションに習熟している場合は、目的 のコードを直接入力することができます。そうでない場合は、[リスト]ボック スを使ってオペレーションを指定します。このコントロールは、オペレーショ ン コード パラメータに対応します。 [直前] 現在のファイルを対象に最後に実行されたオペレーションのコードを表示しま す。 [リスト] Btrieve オペレーションとそのコードの一覧を表示します。デフォルトの設定 は、Open (0) です。実行するオペレーションの先頭文字を入力すると、リスト 内をすばやく移動することができます。 [Get Key バイアス (+50)] Get オペレーションで、データ レコードではなく、キー値のみを返すように MicroKernel に命令します。 [ロックバイアスの 変更 (+500)] 並行トランザクション内で実行される Insert、Update、または Delete オペレー ションに対してノーウェイト ロック バイアスを設定するように MicroKernel に 命令します。 6-6 Pervasive.SQL User’s Guide 表 6-1 コントロール [レコードロック バイアス] Win16 に対応したファンクション エグゼキュータのコントロール 説明 次に示す 5 つのバイアスのいずれかを現在のオペレーションに追加します。排 他トランザクション内にあるファイルでは、明示的に指定したロック バイアス はすべて無視されます。 [なし]−ロックを実行しません(デフォルト) 。 [シングルウェイト (+100)]− 1 つのレコードのロックを試みます。レコードが 既にロックされている場合は、レコードのロックが解除されるまで待機します。 [シングルノーウェイト (+200)]− 1 つのレコードのロックを試みます。レコー ドが既にロックされている場合は制御を戻します。 [マルチウェイト (+300)]−同じファイル内の複数のレコードのロックを試みま す。レコードが既にロックされている場合は、レコードのロックが解除される まで待機します。 [マルチノーウェイト (+400)]−同じファイル内の複数のレコードのロックを試 みます。レコードが既にロックされている場合は制御を戻します。 キー [キー番号] 大部分の Get オペレーションに対しては、現在のオペレーションで使用する キー番号またはインデックス パスを指定します。他のオペレーションの場合は、 ファイル オープン モード、暗号化、論理ディスク ドライブなどの情報を指定し ます。このコントロールはキー番号パラメータに対応します。 [バッファ] 実行する Btrieve オペレーションの対象となるデータ ファイルのパスを指定し ます。 [ポジション] キー バッファ内でのカーソルの現在位置を指定します。 [16 進表示] このチェック ボックスをクリックすると、データが 16 進フォーマットで表示 されます。 [クリア] このボタンをクリックすると、バッファ フィールドが消去され、別のデータ ファイルを入力できるようになります。 データ [バッファ長] データ バッファの長さ(バイト単位)を指定します。デフォルトの設定は、 100 です。データ バッファを要求するオペレーションにはバッファ長を指定す る必要があります。多くのオペレーションではデータ長に値が返されます。通 常、データ長はオペレーションを実行する前に指定してください。このコント ロールはデータ バッファ長パラメータに対応します。 [バッファ] データ値を表示します。読み書きオペレーションの場合、データ バッファには レコードが含まれます。その他のオペレーションの場合、データ バッファには ファイル スペック、フィルタ条件、および MicroKernel がオペレーションを処 理するために必要とするその他の情報が含まれます。このコントロールはデー タ バッファ パラメータに対応します。 [ポジション] データ バッファ内でのカーソルの現在位置を示します。 [16 進表示] このチェック ボックスをクリックすると、データが 16 進フォーマットで表示 されます。 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-7 表 6-1 コントロール Win16 に対応したファンクション エグゼキュータのコントロール 説明 [ステータス] MicroKernel から返されたステータス コードと、Btrieve オペレーションの実行 結果を説明する簡単なメッセージを表示します。ステータス コードとメッセー ジの詳細については、『Status Codes and Messages』を参照してください。 [実行] 現在指定されているオペレーションを実行します。 注意 このユーティリティの Win16 バージョンではウェイト ロックのシミュレーションが 実行されます。Win16 アプリケーションはウェイト ループに入ることができません。 ウェイト バイアスを使ってレコード ロックを要求するとき、別のユーザが既にその レコードをロックしていると、アプリケーションには即座にステータス コード 84 ま たは 85 が返されます。 Win16 ファンクション エグゼキュータ ユーティリティは、レコードを取得できるか、 メイン ウィンドウの右下隅に表示されている[中止]がクリックされるまで、オペ レーションを再試行します。 OS/2 版のメイン ウィンドウに用意されているコントロールの一覧を、6-8 ページの表 6-2 に示します。 表 6-2 コントロール [Open Files] OS/2 に対応したファンクション エグゼキュータのコントロール 説明 オープンしているすべてのデータ ファイルのフル パスを含むリストで、現在の オープン ファイルを表示します。このボックスを使って、オープン ファイルの間 を移動することはできますが、ファイルをオープンすることはできません。ファ イルをオープンする方法については、6-12 ページの「ファイルのオープン」を参 照してください。 このコントロールはポジション ブロック パラメータに対応します。各ファイル名 はポジション ブロックを表しているため、ファイルが複数回にわたってオープン されている場合、そのファイル名はリスト内に重複して表示されます。 [Open Files]リスト ボックスでは、[Scratch Buffers]は常に使用可能なバッファ のセットに対応していますが、Btrieve オペレーションによって更新されることは ありません。このバッファのセットを使用すると、既にオープンされたファイル のキー バッファに影響を与えることなく追加のファイルがオープンされます。 6-8 Pervasive.SQL User’s Guide 表 6-2 コントロール [Transaction] OS/2 に対応したファンクション エグゼキュータのコントロール 続き 説明 現在のオペレーションがトランザクション内で実行されるかどうか、またそのト ランザクションのタイプを示します。 [Exclusive]− 排他トランザクション [Concurrent]− 並行トランザクション [Conc+ModLk]−[Modify Lock Bias (+500)]チェック ボックスがオンになって いる並行トランザクション オペレーション [Current] 現在のオペレーション コードとそのバイアス(もしあれば)を指定します。デ フォルトの設定は 0 です。Btrieve オペレーションに習熟している場合は、目的の コードを直接入力することができます。そうでない場合は、 [List]ボックスを 使ってオペレーションを指定します。このコントロールは、オペレーション コー ド パラメータに対応します。 [Last] 現在のファイルを対象に最後に実行されたオペレーションのコードを表示します。 [List] Btrieve オペレーションとそのコードの一覧を表示します。デフォルトの設定は、 Open (0) です。実行するオペレーションの先頭文字を入力すると、リスト内をす ばやく移動することができます。 [Get Key Bias (+50)] Get オペレーションで、データ レコードではなく、キー値のみを返すように MicroKernel に命令します。 [Modify Lock Bias (+500)] 並行トランザクション内で実行される Insert、Update、または Delete オペレー ションに対してノーウェイト ロック バイアスを設定するように MicroKernel に命 令します。 [Read Lock Bias] 次に示す 5 つのバイアスのいずれかを現在のオペレーションに追加します。排他 トランザクション内にあるファイルでは、明示的に指定したロック バイアスはす べて無視されます。 [No Lock]−ロックを実行しません ( デフォルト ) [Single Wait (+100)]− 1 つのレコードのロックを試みます。レコードが既にロッ クされている場合は、レコードのロックが解除されるまで待機します。 [Single No Wait (+200)]− 1 つのレコードのロックを試みます。レコードが既に ロックされている場合は制御を戻します。 [Multiple Wait (+300)]−同じファイル内の複数のレコードのロックを試みます。 レコードが既にロックされている場合は、レコードのロックが解除されるまで待 機します。 [Multiple No Wait (+400)]−同じファイル内の複数のレコードのロックを試みま す。レコードが既にロックされている場合は制御を戻します。 [Browse] オープン操作に使用され、このボタンを使用してオープンするファイルを選択で きます。選択したファイル名はキー バッファにコピーされます。 [To Do] 同じオペレーションを指定した回数実行できます。このオプションは、繰り返し 操作を実行する際に役立ちます。たとえば、同じレコードを 100 回挿入する場合、 Insert オペレーションを選択し、このフィールドで 100 を指定します。 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-9 表 6-2 コントロール [Done] OS/2 に対応したファンクション エグゼキュータのコントロール 続き 説明 実行されたオペレーションの回数が表示されす。 キー [Key Number] 大部分の Get オペレーションに対しては、現在のオペレーションで使用するキー 番号またはインデックス パスを指定します。他のオペレーションの場合は、ファ イル オープン モード、暗号化、論理ディスク ドライブなどの情報を指定します。 このコントロールはキー番号パラメータに対応します。 [Key] 実行する Btrieve オペレーションの対象となるデータ ファイルのパスを指定しま す。 [Pos] キー バッファ内でのカーソルの現在位置を指定します。 データ [Data Length] データ バッファの長さ(バイト単位)を指定します。デフォルトの設定は、100 です。データ バッファを要求するオペレーションにはバッファ長を指定する必要 があります。多くのオペレーションではデータ長に値が返されます。通常、デー タ長はオペレーションを実行する前に指定してください。このコントロールは データ バッファ長パラメータに対応します。 [Data] データ値を表示します。読み書きオペレーションの場合、データ バッファにはレ コードが含まれます。その他のオペレーションの場合、データ バッファにはファ イル スペック、フィルタ条件、および MicroKernel がオペレーションを処理する ために必要とするその他の情報が含まれます。このコントロールはデータ バッ ファ パラメータに対応します。 [Pos] データ バッファ内でのカーソルの現在位置を示します。 [Edit Key] ダイアログを表示し、ASCII または 16 進値を使用してキー バッファを編集できる ようにします。キー バッファの編集の詳細については、6-11 ページの「キー バッ ファまたはデータ バッファの編集 (OS/2(サーバ版)クライアントのみ)」を参 照してください。 [Edit Data] ダイアログを表示し、ASCII または 16 進値を使用してデータ バッファを編集でき るようにします。キー バッファの編集の詳細については、6-11 ページの「キー バッファまたはデータ バッファの編集 (OS/2(サーバ版)クライアントのみ)」 を参照してください。 [Status] MicroKernel から返されたステータス コードと、Btrieve オペレーションの実行結 果を説明する簡単なメッセージを表示します。ステータス コードとメッセージの 詳細については、 『Status Codes and Messages』を参照してください。 [Status Help] すべてのステータス コードのヘルプ情報を提供します。 [Execute] 現在指定されているオペレーションを実行します。 6-10 Pervasive.SQL User’s Guide キー バッファまたはデータ バッファの編集 (OS/2(サーバ版)クライアントのみ) (サーバ版)クライアントのみ) OS/2 バージョンのファンクション エグゼキュータでは、キー バッファおよ びデータ バッファの内容をユーティリティのメイン ウィンドウから編集で きます。ただし、ファンクション エグゼキュータでは、別々のダイアログ ボックスを使用して、キー バッファおよびデータ バッファについてのより 多くの情報を提供するため、より高度な編集が可能になります。複数のファ イルをオープンしている場合、これらのダイアログ ボックスは、現在の ファイルのバッファ内容を表示します。オープンしたファイル間で切り替え を行うと、これらのダイアログ ボックスの表示内容は変更されます。 ➤ ファンクション エグゼキュータ ユーティリティの他のダイアログ ボックス を使用するには u 図 6-3 メイン ウィンドウの[Edit Key]ボタンまたは[Edit Data]ボタンをク リックし、図 6-3[Edit Data Buffer]ダイアログ ボックスを表示します。 [Edit Data Buffer]ダイアログ ]ダイアログ 表 6-3 に、このダイアログ ボックスのコントロールの一覧を示します。 表 6-3 [Edit Data Buffer]ダイアログのコントロール ]ダイアログのコントロール コントロール 説明 [Hex Offset] バッファの始まり(ポジション 1)に関連する、行の最初のバイトのポジショ ンを示します。 [Hex Format] キー バッファまたはデータ バッファの内容を 16 進値で示します。 [ASCII Format] キー バッファまたはデータ バッファの内容を ASCII 値で示します。 [Go To Offset] バッファにオフセット値を指定すると、そのポジションにすぐ移動できます。 [Data Length] データ バッファの長さを指定します。 [Execute] 現在のオペレーションを実行します。 [Clear] バッファの内容を消去します。 [Close] ダイアログをクローズします。 [Help] ダイアログのヘルプ情報を表示します。 ファンクション エグゼキュータを使った Btrieve オペレーションのテスト 6-11 オペレーションの実行 オペレーションを実行するには、適切なコントロールに値を指定し、 [Execute]ボタンをクリックします。Btrieve には多数のオペレーションが用 意されているため、この章ではこれらすべてに関する説明は行いません。次 に示す操作手順では、いくつかの一般的なオペレーションについて説明しま す。 ファイルのオープン ファンクション エグゼキュータを使ってオープンできるのは、 Pervasive.SQL データ ファイルのみです。 ➤ データ ファイルをオープンするには 1. [リスト]ボックスを使って[Open (0)]オペレーションを選択するか、 [現在]ボックスに 0 を入力します。 2. [キー]セクションの[バッファ]ボックスにデータ ファイルのパスを 入力します。 3. [実行]ボタンをクリックするか、Enter キーを押します。 特定のキー値が存在することの検出 ➤ データ ファイルに特定のキー値が存在することを検出するには 1. データ ファイルをオープンするか、オープン ファイルの一覧からファ イルを選択します。 2. [Get Key バイアス (+50)]チェック ボックスをオンにして、Get Equal (5) オペレーションを指定します。 オペレーションを指定するには、次のいずれかの方法を使用します。 w [リスト]ボックスを使って、 [Get Equal (5)]オペレーションを選択 し、 [Get Key バイアス (+50)]チェック ボックスをオンにします。 w [現在]ボックスに 55 を入力します。 3. [キー番号]ボックスに検証するキーの番号を入力します。 4. [キー]セクションの[バッファ]ボックスに検出するキー値を入力し ます。 5. [実行]ボタンをクリックするか、Enter キーを押します。 6-12 Pervasive.SQL User’s Guide 第7章 メンテナンス ユーティリティを 使った Btrieve データ ファイルの操作 この章では、以下のトピックについて説明します。 u 7-2 ページの「メンテナンス ユーティリティの概要」 u 7-3 ページの「Btrieve 対話型メンテナンス ユーティリティ(DDF Ease、 SQLScope、ビュー変換ユーティリティ) 」 u 7-31 ページの「Btrieve コマンド ライン メンテナンス ユーティリティ (BUTIL)」 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-1 メンテナンス ユーティリティの概要 Pervasive.SQL には、対話型のメンテナンス ユーティリティとコマンド ライ ン メンテナンス ユーティリティがあります。いずれのユーティリティでも、 以下のファイル操作やデータ操作を実行できます。 u 定義したファイル スペックとキー スペックに基づいて新しいデータ ファイルを作成する。 u 既存のデータ ファイルに対するファイル スペックとキー スペックを設 定する。 u データ ファイルのオーナ ネームを設定および消去する。 u データ ファイルのインデックスを作成およびドロップする。 u ASCII 形式のシーケンシャル データをインポートおよびエクスポートす る。 u Pervasive.SQL データ ファイル間でデータをコピーする。 u 最後のバックアップ以後システム障害発生時までに行われた変更を回復 する。 いずれのユーティリティも主要な機能は同じですが、若干の相違点がありま す。例えば、対話型のメンテナンス ユーティリティでは、定義したファイ ル スペックとキー スペックに基づいてディスクリプション ファイルを作成 できます。コマンド ライン メンテナンス ユーティリティでは、サーバ上の 1 つまたは複数のローカル ファイルを対象に Continuous オペレーションの 開始および停止を実行できます。 メンテナンス ユーティリティを使用する前に、ファイル、レコード、キー、 セグメントなど、Btrieve の基本要素を理解する必要があります。これらの 項目の詳細については、 『Btrieve Programmer’s Guide』を参照してください。 7-2 Pervasive.SQL User’s Guide Btrieve 対話型メンテナンス ユーティリティ(DDF Ease、 、 ユーティリティ( SQLScope、ビュー変換ユーティリティ) 、ビュー変換ユーティリティ) 対話型メンテナンス ユーティリティは、Win16(クライアント/サーバの み) 、Win32(Pervasive.SQL クライアント/サーバおよびワークステーショ ン製品) 、および OS/2(クライアント/サーバのみ)の各プラットフォーム で動作します。グラフィカル インタフェースを使用する場合やディスクリ プション ファイルを作成する場合は、このユーティリティを使用します。 ここでは、以下の項目について説明します。 u 7-4 ページの「Btrieve メンテナンス ユーティリティの起動」 u 7-5 ページの「拡張ファイルのサポート」 u 7-6 ページの「ファイル情報エディタの概要」 u 7-11 ページの「既存ファイルの情報のロード」 u 7-12 ページの「新しいファイルの作成」 u 7-14 ページの「Btrieve データ ファイルのコンパクト化」 u 7-14 ページの「6.x データの表示と非表示」 u 7-15 ページの「キーのオルタネート コレーティング シーケンスの指定」 u 7-17 ページの「情報レポートの作成」 u 7-19 ページの「オーナ ネームの設定と消去」 u 7-20 ページの「インデックスの作成と削除」 u 7-22 ページの「レコードのインポート、エクスポート、およびコピー」 u 7-27 ページの「システム障害後のデータの回復」 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-3 Btrieve メンテナンス ユーティリティの起動 ➤ Btrieve メンテナンス ユーティリティを起動するには u [スタート]メニューの[プログラム]をポイントし、 [Pervasive SQL 7]をクリックします。次に、[Maintenance(Win16)]または [Maintenance(Win32) ]をクリックします。 図 7-1 のような Btrieve メンテナンス ユーティリティのメイン ウィンド ウが表示されます。 図 7-1 Btrieve メンテナンス ユーティリティのメイン ウィンドウ メニュー オプション 対話型メンテナンス ユーティリティでは、以下のメニューが表示されます。 [オプション] [ファイル情報エディタ]ダイアログの表示、オーナ ネームの設定および 消去、情報レポートの生成、ユーティリティの終了を行います。 [インデックス] インデックスを作成および削除します。 [データ] ASCII ファイルからのデータのロード、ASCII ファイルへのデータの保存、 データ ファイル間のレコードのコピー、および最後のバックアップ以後シ ステム障害発生時までに行われたデータ ファイルへの変更を回復するため のロール フォワード オペレーションを実行します。 [ヘルプ] メンテナンス ユーティリティのヘルプ システムにアクセスします。 7-4 Pervasive.SQL User’s Guide ヘルプの使い方 メンテナンス ユーティリティのヘルプ システムにアクセスするには、[ヘル プ]メニューの以下のコマンドのいずれかを選択します。 [ヘルプの起動] メンテナンス ユーティリティのヘルプ システムの使い方を表示します。 [目次] メンテナンス ユーティリティのヘルプ トピックの一覧を表示します。 [MS ヘルプの使い方] ヘルプ システムの使い方を表示します。 [バージョン情報] 著作権情報およびバージョン番号を表示します。また、MicroKernel Database エンジンおよび Btrieve クライアント リクエスタがロードされてい る場合には、それらのバージョン番号も表示されます。 また、ダイアログ ボックスに表示される[ヘルプ]ボタンをクリックする と、そのダイアログ ボックスのヘルプを表示できます。 拡張ファイルのサポート MicroKernel データ ファイルのサイズは、オペレーティング システムのファ イル サイズの制限を超えることができます。MicroKernel 拡張ファイルから シーケンシャル ファイルへデータをエクスポートすると、物理的なフォー マットが異なるため、シーケンシャル ファイルのサイズが MicroKernel の ファイル サイズの制限を超えることがあります。 対話型メンテナンス ユーティリティは、シーケンシャル ファイルがファイ ル サイズの制限(2 GB)を超えていることを検出すると、エクステンショ ン ファイルの作成を開始します。この処理は自動的に行われます。エクス テンション ファイルと元のシーケンシャル ファイルは、同じボリュームに 格納する必要があります。エクステンション ファイルの名前の付け方は、 MicroKernel Database エンジンの場合と似ています。最初のエクステンショ ン ファイルの名前は、ベース ファイルと同じ名前に拡張子「.~01」が付き ます。2 番目のエクステンション ファイルの名前は、拡張子が「.~02」にな ります(以下同様) 。これらの番号は 16 進数で示されます。エクステンショ ン ファイルの最大数は 255 であり、255 番目のエクステンション ファイル、 つまり最後のエクステンション ファイルの拡張子は「.~ff」になります。 また、シーケンシャル ファイルからデータをインポートするときは、その ファイルの拡張子がチェックされ、エクステンション ファイルからデータ がロードされます。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-5 ファイル情報エディタの概要 ここでは、 [ファイル情報エディタ]ダイアログについて説明します。この ダイアログを使用して、設定したファイル スペックとキー スペックに基づ いて新しいファイルを作成できます。このダイアログ ボックスでは既存 ファイルに関する情報をロードできるため、既存データ ファイルのファイ ル スペックおよびキー スペックを表示する場合も便利です。新しいファイ ルは、既存ファイルのファイル スペックおよびキー スペックに基づいて作 成することもできます(コマンド ライン メンテナンス ユーティリティの 「CLONE」と同じです)。 ➤ [ファイル情報エディタ]ダイアログを表示するには 1. Btrieve メンテナンス ユーティリティを起動します。 2. メイン ウィンドウで、 [オプション]メニューの[情報エディタの表 示]を選択します。 ファイル情報エディタ(図 7-2)が表示されます。 図 7-2 ファイル情報エディタ 7-6 Pervasive.SQL User’s Guide [ファイル情報エディタ]ダイアログのオプション ダイアログ ボックスの上部に、以下のボタンが表示されます。 [情報のロード] 既存ファイルに関する情報をロードします。情報をロードするとき、既存 ファイルが編集されることはありません。ロードされる情報は、既存ファ イルに関する情報のコピーです。 [ファイルの作成] ダイアログ ボックス内の現在の情報に基づいて新しいファイルを作成しま す。 [デフォルトに設定] 各コントロールにデフォルト値を設定します。 [ディスクリプション コメント] ディスクリプション ファイルを作成している場合に、そのファイルに関す る注釈を入力できます。 [6.x 属性表示] 6.x 以降のファイルに固有のコントロールを表示します。デフォルトでは、 6.0 以前のファイルに関する情報をロードしているとき、これらのコント ロールは表示されません。 (このボタンは、6.x 以前のファイルに関する情 報をロードしているときにのみ使用できます。 ) [ファイル情報エディタ]ダイアログのヘルプを表示します。 [ヘルプ] [ファイル情報エディタ]の上部にある[データファイル情報]ボックスに は、以下のコントロールが表示されます。 [オーナネーム] 必要な場合に、既存ファイルのオーナ ネームの指定に使用するテキスト ボックスを表示します。 [バージョン] ファイルのすべての属性を読み込むことのできる MicroKernel の最も古い バージョンです。例えば、MicroKernel 6.15 でファイルを作成し、6.15 固有 の属性を使用しなかった場合は、6.0 と表示されます。 [総レコードの数] ファイルに含まれるレコードの総数。 [ファイル情報エディタ]の中央部には、[ファイル仕様]ボックスが表示さ れます。表 7-1 では、このボックスに表示されるコントロールを説明しま す。 表 7-1 [ファイル仕様]のコントロール コントロール 説明 範囲 デフォルト [レコード長] ファイルに含まれる固定長レコードの論理デー 4 ∼ 4,088 タ レコード長(バイト単位)を指定します。 100 [ページ サイズ] ファイルの物理ページ サイズ(バイト単位) を指定します。 4,096 512 ∼ 4,096 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-7 表 7-1 [ファイル仕様]のコントロール コントロール 説明 範囲 デフォルト [キー数] エディタに現在定義されている独立したキーの 0 ∼ 119 数を示します(キー セグメントではありませ ん)。 [キー]リストのキーの数を反映していま す。 0 [セグメント数] エディタに現在定義されているキー セグメン トの数を示します。[セグメント]リストのセ グメントの数を反映しています。 0 ∼ 119 0 [リンク可能キー] 将来追加するリンク重複キー用に予約する、8 0 ∼ 119 バイトのプレース ホルダの数を指定します。 既存データ ファイルに関する情報をロードし ている場合、この値は、そのファイルで現在使 用できるプレース ホルダの数を反映していま す。(最初に予約されたプレース ホルダの数 は、ファイルには格納されません。) 3 [キーオンリー] キーオンリー ファイルであるかどうかを示し オンまたは ます。[データ圧縮]をオンにした場合、 [可変 オフ 長レコード]をオンにした場合、またはファイ ルに複数のキーを定義した場合には、指定でき ません。 オフ [インデックス バランス] ファイルでインデックス バランスを使用して オンまたは キー ページを管理するかどうかを指定します。 オフ オフ [プリアロケーション] ファイルでプリアロケートされたページを使用 オンまたは するかどうかを指定します。 オフ オフ [ページ数] ファイルの作成時にプリアロケートするページ 1 ∼ 65,535 数を指定します。[プリアロケーション]をオ ンにした場合にのみ指定できます。既存データ ファイルに関する情報をロードしている場合、 そのファイルに残されている未使用のプリアロ ケートされたページ数が表示されます。(最初 に割り当てられたプリアロケーション ページ 数は、ファイルには保存されません。) 0 [データ圧縮] ファイルでデータ圧縮を使用するかどうかを指 オンまたは 定します。キーオンリー ファイルまたはブラ オフ ンク トランケーションを使用するファイルに は、指定できません。 オフ [可変長レコード] ファイルに可変長レコードを含めることができ オンまたは るかどうかを指定します。 オフ オフ 7-8 Pervasive.SQL User’s Guide 表 7-1 [ファイル仕様]のコントロール コントロール 説明 範囲 デフォルト [ブランクトランケー ション] ディスク領域を節約するために、ファイルで可 オンまたは 変長レコードに対してブランク トランケー オフ ションを使うかどうかを指定します。[可変長 レコード]をオンにした場合にのみ指定できま す。 オフ [VAT] 長いレコード内のデータへのアクセスを高速化 オンまたは するために、ファイルで可変長部割り当てテー オフ ブルを使用するかどうかを指定します。[可変 長レコード]をオンにした場合にのみ指定でき ます。 オフ [% 空きスペース] MicroKernel が新しい可変ページを作成する前 5、10、20、 に、ファイルの可変ページで使用可能になって または 30 いる必要がある未使用スペースの量を指定しま す。[データ圧縮]または[可変長レコード] をオンにした場合にのみ指定できます。 5 ダイアログ ボックスの下部中央にある[キー]リストには、ファイルに定 義されているキー番号が表示されます(6.x 以降のファイルの場合は、キー 番号が連続している必要はありません。キー番号が飛び飛びのこともありま す) 。ダイアログ ボックスの左下の[キー]ボックスには、選択したキーの スペックが表示されます。 ダイアログ ボックスの下部中央の[セグメント]リストには、 [キー]リス トで選択したキーに定義されているキー セグメント番号が表示されます。 ダイアログ ボックスの右下の[セグメント]ボックスには、選択したセグ メントのスペックが表示されます。 さらに、 [キー]と[セグメント]リストの下には以下のボタンが表示され ます。 [挿入] 新しいキーまたはセグメントを定義します。 [削除] 選択されているキーまたはセグメントのスペックを削除します。 [圧縮] キー番号を付け直して連続番号にします。このボタンを使用すると、キー スペックの削除によって生じたキー番号の不連続をなくすことがでます。 注意 これらのボタンは作成するファイルのキー スペックを制御するため、既存ファイルの キーを対象にオペレーションを実行することはできません。既存ファイルのインデッ クスを作成またはドロップする場合は、7-20 ページの「インデックスの作成と削除」 を参照してください。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-9 ダイアログ ボックスの左下には、 [キー]グループ ボックスがあります。表 7-2 では、この領域に表示されるコントロールを説明します。これらは、現 在のキー セグメントに固有のものではなく、指定したキー、つまり[キー] リストで選択したキーに固有のコントロールです。これらのコントールのい ずれかの設定を変更すると、変更内容は指定したキーのすべてのセグメント に影響を与えます。 表 7-2 [キー]のコントロール コントロール 説明 デフォルト [重複可能] キーが重複値を持てるかどうかを指定します。 オン [変更可能] キーの作成後にキーの値を変更できるかどうかを指定します。 オン [繰り返し重複] 重複キーの値を格納するために繰り返し重複を使うかどうかを指定 します。 オフ [ヌルキー] キーがヌル値を持てるかどうかを指定します。 オフ [全セグメント (ヌル) ] レコード内のすべてのキー セグメントにヌル値が含まれている場合 オフ には、そのレコードをキーに含めないように指定します。[ヌル キー]をオンにした場合にのみ指定できます。 [一部セグメント (マニュアル) ] キー セグメントのいずれかにヌル値が含まれている場合に、そのレ オフ コードをキーに含めないように指定します。[ヌルキー]をオンにし た場合にのみ指定できます。 [ACS 情報] キーに対するオルタネート コレーティング シーケンス(ACS)を指 オフ 定します。キーのセグメントに対する[ACS の使用]チェック ボッ クスをオンにした場合にのみ指定できます。 [ユニーク値] ファイルに含まれる重複のないキー値の数を示します。既存データ ファイルに関する情報をロードしているときにのみ表示されます。 適用外 ダイアログ ボックスの右下には、 [キーセグメント]グループ ボックスがあ ります。表 7-3 では、この領域に表示されるコントロールを説明します。こ れらは、指定したキー セグメント、つまり[キーセグメント]リストで選択 したセグメントに固有のコントロールです。 表 7-3 コントロール [キーセグメント]のコントロール 説明 デフォルト [データ型] キー セグメントのデータ型を指定します。 文字列 [位置] レコード内でのこのキー セグメントの相対的な開始位置を数値で指 定します。レコード長を超える値は指定できません。 1 [長さ] キー セグメントの長さ(バイト単位)を指定します。セグメントの 10 データ型によって要求される制限を超える値は、指定できません。 キーの位置とキーの長さの合計が、レコード長を超えないようにして ください。 7-10 Pervasive.SQL User’s Guide 表 7-3 コントロール [キーセグメント]のコントロール 続き 説明 デフォルト [ヌル値(16 進) ] キー セグメントのヌルを表す値を 16 進数で指定します。キーに対し バイナリ ゼロ [ヌルキー]チェック ボックスをオンにした場合にのみ指定できま す。 [大小文字無視] セグメントで大小文字を区別するかどうかを指定します。データ型が オン STRING、LSTRING、および ZSTRING のキーか、または ACS を使 用しないキーにのみ指定できます。 [降順ソート] キー セグメントの値を降順、つまり値の大きい順にソートすること を指定します。 オフ [ACS の使用] セグメントで、キーに定義されたオルタネート コレーティング シー オフ ケンスを使用するかどうかを指定します。データ型が、大小文字が区 別される string、lstring、および zstring の場合にのみ指定できます。 既存ファイルの情報のロード ➤ 既存データ ファイルの情報をファイル情報エディタにロードするには 1. [ファイル情報エディタ]ダイアログ ボックスの上の[情報のロード] をクリックします。 [ファイルの選択]ダイアログ ボックス(図 7-3) が表示されます。 図 7-3 [ファイルの選択]ダイアログ 2. 情報をロードするファイルの名前とパスを指定します。 (デフォルトで は、データ ファイルの拡張子は .mkd です。 ) メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-11 メンテナンス ユーティリティは、指定されたファイルをまずデータ ファイルとして開こうとします。オーナ ネームが必要なファイルの場 合には、オーナ ネームの入力を求めるプロンプトが表示されます。 (オーナ ネームはオプションになっているので、開くときにオーナ ネー ムを入力する必要がないこともあります。 )指定したファイルがデータ ファイルでない場合は、ディスクリプション ファイルとして開かれま す。 新しいファイルの作成 ➤ ファイル情報エディタの現在の情報に基づいて新しいファイルを作成するに は 1. [ファイル情報エディタ]ダイアログ ボックスの上の[ファイルの作 成]をクリックします。 [ファイルの作成]ダイアログ ボックス(図 74)が表示されます。 図 7-4 [ファイルの作成]ダイアログ 2. [ファイルの作成]ダイアログのコントロールを指定します。表 7-4 を 参照してください。 表 7-4 コントロール [ファイル名] [ファイルの作成]ダイアログのコントロール 説明 デフォルト ファイルの名前とパスを指定します。 (デフォルトで は、データ ファイルの拡張子は .mkd です。) 適用外 [ファイルの種類] 作成するファイルのタイプを指定します。ディスクリ [MicroKernel 互換] プション ファイルを作成している場合には、 [インデッ クスオンリー]オプションを使用できます。このオプ ションを使用して作成したディスクリプション ファイ ルを BUTIL ユーティリティで使用して、既存データ ファイルにインデックスを追加できます。 (詳細につい ては、7-20 ページの「インデックスの作成」を参照し てください。 ) 7-12 Pervasive.SQL User’s Guide 表 7-4 コントロール [ファイルの作成]ダイアログのコントロール 説明 デフォルト [システムデータ] ファイルにシステム データが含められるかどうかを指 [エンジン設定を使用] 定します。 [エンジン設定を使用]を選択した場合は、 3-40 ページの「[システム データ] 」の設定オプション の設定値が使用されます。 [システムデータなし]を選 択した場合は、エンジンの設定に関係なくシステム データは作成されません。 [システムデータを強要]を 選択した場合は、エンジンの設定に関係なくシステム データが強制的に作成されます。 ファイル タイプが[MicroKernel 互換]の場合にのみ指 定できます。 ディスクリプション ファイルへのコメントの追加 ➤ 作成するディスクリプション ファイルにコメントを追加するには 1. [ディスクリプションコメント]をクリックします。[ディスクリプショ ンファイルコメント]ダイアログ ボックス(図 7-5)が表示されます。 図 7-5 [ディスクリプションファイルコメント]ダイアログ 2. 半角 5,120 文字までのコメントのブロックを入力します。 3. コメントの入力が終了したら、 [OK]をクリックします。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-13 Btrieve データ ファイルのコンパクト化 ここでは、Btrieve データ ファイル内の未使用領域を削除して、ファイルの サイズを縮小する方法について説明します。この処理は、コマンド ライン メンテナンス ユーティリティ(BUTIL)を使って行うこともできます。 ➤ Btrieve ファイルをコンパクト化するには メンテナンス ユーティリティを起動します。 1. 2. [オプション]メニューの[情報エディタの表示]を選択します。 3. [情報のロード]を選択し、コンパクト化するファイルを選択します。 4. [ファイルの作成]を選択します。表示された[ファイルの作成]ダイ アログでファイルに新しい名前を指定し(クローンを作成します) 、 [OK]をクリックします。 5. メイン ウィンドウで、 [データ]メニューの[保存]を選択します。 [データの保存]ダイアログで、[保存元 MicroKernel ファイル]ボック スにコンパクト化するファイル名を入力し、 [保存先シーケンシャル ファイル]ボックスに出力ファイルの名前(例えば、< 元のファイル名 >.out)を指定します。 6. [実行]をクリックします。[データの保存]ダイアログに保存の結果が 表示されます。 [閉じる]をクリックします。 7. [データ]メニューの[ロード]をクリックします。[データのロード] ダイアログの[ロード元シーケンシャルファイル]ボックスに、手順 5 で保存したシーケンシャル データ ファイルの名前を入力します。次に、 [ロード先 MicroKernel ファイル]ボックスに手順 4 で作成したクロー ン ファイルの名前を入力します。 8. [実行]をクリックします。[データのロード]ダイアログにロードの結 果が表示されます。 [閉じる]をクリックします。 元のファイルとクローン ファイルのサイズを比較すると、サイズが縮 小したことを確認できます。 6.x データの表示と非表示 v6.0 以前のファイルをロードしているとき、ファイル情報エディタ内の 6.x 以降に固有のコントロールは、 [6.x 属性表示]ボタンをクリックしないと表 示されません。6.x 以降に固有の機能には、例えば VAT(可変長部割り当て テーブル)があります。 このボタンは、6.0 以前の MicroKernel と 6.x 以降の MicroKernel を併用する 環境で作業する場合に便利です。6.x 固有のコントロールを非表示にするこ とにより、誤って 6.x ファイルを作成してしまうのを避けることができま す。 (v6.0 以前の MicroKernel は、6.x ファイルにアクセスできません。 ) 7-14 Pervasive.SQL User’s Guide ➤ 6.x 固有のコントロールを表示するには u [6.x 属性表示]ボタンをクリックします。 [6.x 属性表示]ボタンは、v6.0 以前のファイルを操作しているときにの み使用できます。 キーのオルタネート コレーティング シーケンスの指定 ➤ キーのオルタネート コレーティング シーケンスを指定するには 1. [ACS 情報]をクリックします。 [ACS 情報の指定]ダイアログ ボックスが表示されます(図 7-6)。 図 7-6 [ACS 情報の指定]ダイアログ 2. 表 7-5 コントロール カントリ ID とコード ページ、ACS ファイル名、またはインターナショ ナル ソート規則(ISR)のいずれかを指定することができます。次の表 を参照してください。 ACS 情報のコントロール 説明 デフォルト [カントリ ID] 国を識別する Intel 形式の番号。詳細については、オペレー ティング システムのマニュアルを参照してください。 -1 [コードページ] 使用するコード ページを識別する Intel 形式の番号。詳細につ -1 いては、オペレーティング システムのマニュアルを参照して ください。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-15 表 7-5 ACS 情報のコントロール コントロール 説明 デフォルト [ACS ファイル] オルタネート コレーティング シーケンス ファイルのフル パ ス名を指定します。 適用外 [インターナショナル ソート規則(ISR)] このラジオボタンをクリックすると、各種言語データをソー トするために使用する特定の ISR テーブルを指定できます。 Pervasive.SQL 7 では、生成済みの ISR テーブルのセットがあ らかじめ用意されています1。これらの ISR テーブルについて は、 『Btrieve Programmer’s Reference』を参照してください。 1 Pervasive.SQL の今後のリリースでは、さまざまな言語をサポートするため、より多くの ISR テーブルが提供される予定 です。 3. カントリ ID とコード ページを指定すると、ロケール固有のコレーティ ング シーケンスがデータ ファイルに保存されます。ロケールが変わっ た場合でも、新しいキーの値が正しく挿入されます。 4. データ ファイルに対し ACS ファイル名を指定すると、ACS ファイルの 内容がデータ ファイルにコピーされます。 (ACS ファイル名はデータ ファイルには含まれません。 )ACS は、8 バイトの名前(例えば UPPER)を使って自分自身を識別します。後で、メンテナンス ユー ティリティでデータ ファイルの ACS 情報を表示するときには、元の ACS のファイル名ではなくこの 8 バイトの名前が表示されます。 5. ディスクリプション ファイルに対する ACS ファイル名を指定すると、 ACS ファイルの実際のパスとファイル名がディスクリプション ファイ ルにコピーされます。後で、メンテナンス ユーティリティでディスク リプション ファイルの情報を表示するときには、指定した実際の ACS ファイルを検索しようとします。 文字列値のソートに関し、ISO で定義された言語固有のコレーティング シーケンスを使用する ACS を指定するには、ISR のテーブル名を指定 する必要があります。 [テーブル名]フィールドは、16 文字までに制限 されています。ISR の詳細については、『Btrieve Programmer’s Reference』 を参照してください。 7-16 Pervasive.SQL User’s Guide 情報レポートの作成 情報レポートを作成すると、MicroKernel のトランザクション一貫性保守機 能でファイルのログを記録できるどうかを判断するときに役立ちます。 ➤ 既存データ ファイルの情報レポートを調べるには 1. 図 7-7 メイン ウィンドウで、 [オプション]メニューの[情報レポートの作 成]をクリックします。 [ファイル情報レポート]ダイアログ ボックス が表示されます(図 7-7)。 [ファイル情報レポート]ダイアログ 2. 使用するデータ ファイルおよびレポート ファイル名を指定します。レ ポートの作成と同時にそれを表示する場合は、 [レポートの表示] チェック ボックスをオンにします。 このチェック ボックスをオンにすると、図 7-8 の[ファイルの表示] ウィンドウが表示されます。 図 7-8 ファイル情報レポートの例 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-17 ファイル情報レポートのヘッダは、ファイル情報エディタで設定したコ ントロールに対応しています。7-6 ページの「ファイル情報エディタの 概要」を参照してください。 情報レポートの下に表示される凡例は、レポートのキーまたはセグメン ト部分で使用されている記号の説明です(図 7-9 を参照してください)。 ここに、キーおよびキー セグメントの数、ファイル内でのキーの位置、 キーの長さなどの情報が表示されます。 図 7-9 情報レポートのキーおよびセグメント情報と凡例 7-18 Pervasive.SQL User’s Guide オーナ ネームの設定と消去 ➤ オーナ ネームを設定または消去するには 1. [オプション]メニューの[オーナネームの設定 / クリア]をクリック します。 [オーナネームの設定 / クリア]ダイアログ ボックス(図 7-10) が表示されます。 図 7-10 [オーナネームの設定 / クリア]ダイアログ 2. [MicroKernel ファイル]ボックスで、オーナ ネームを設定または消去 するファイルを指定します。オーナ ネームを消去するには、 [オーナ ネームのクリア]をクリックし、 [現在のオーナ]ボックスにファイル のオーナ ネームを入力します。 3. オーナ ネームを設定するには、 [オーナネームの設定]をクリックし、 [新しいオーナ]ボックスにファイルの新しいオーナ ネームを入力しま す。 [オーナネームなしの読込み専用アクセスを許可する]チェック ボックスをオンにした場合は、レコードへのリードオンリー アクセス がすべてのユーザに許されます。 [ファイルのデータを暗号化する]チェック ボックスをオンにした場合 は、無許可のユーザがデバッガやファイル ダンプ ユーティリティを 使ってデータを調べることはできません。暗号化の処理には時間がかか るため、このオプションは、データのセキュリティが重要な環境でのみ 選択してください。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-19 インデックスの作成と削除 インデックスとは、特定のキーを使ってすべてのキー値をソートする構造の ことです。メンテナンス ユーティリティを使って、データ ファイルのイン デックスを作成したり削除することができます。 インデックスの作成 ファイルに少なくとも 1 つのキーが定義されていないと、インデックスを作 成することはできません。 ➤ インデックスを作成するには 1. [インデックス]メニューの[作成]をクリックします。[インデックス の作成]ダイアログ ボックス(図 7-11)が表示されます。 図 7-11 [インデックスの作成]ダイアログ 2. [インデックスの作成]ダイアログ ボックスの以下のデータ ボックスに 値を設定します。 7-20 Pervasive.SQL User’s Guide 内部インデックスと外部インデックスのどちらを作成するのか指定し ます。内部インデックスは、データ ファイルの一部として動的に保守 されます。外部インデックスは、必要に応じて作成する別個のファイ ルです。 [インデックスの種類] 外部インデックス ファイルは、指定したキーでソートされたレコード が格納されている標準のデータ ファイルです。各レコードは、次の データで構成されています。 u 4 バイトのアドレス。元のデータ ファイル内でのレコードの物理ポ ジションを示します。 u キー値 [データファイル] インデックスを作成するデータ ファイルの名前を指定します。 [外部インデックス ファイル] 外部インデックスの作成先ファイルの名前を指定します。内部イン デックスの場合は指定できません。 [情報エディタで使用する キー仕様番号] ファイル情報エディタで定義したキー番号のリストが表示されます。 ファイルにシステム定義のログ キー(システム データともいいます) が格納されていて、キーが削除されている場合には、リストに [SYSKEY]が表示されます。 [SYSKEY]を選択すると、システム定 義のログ キーをファイルに追加できます。 [データファイルの既存 キー番号] [リストのリフレッシュ]をクリックすると、ファイルに対して定義さ れているキー番号が表示されます。ファイルにシステム定義のログ キーが格納されている場合は、リストに[SYSKEY]が表示されます。 [作成に使用するキー番号] [リストのリフレッシュ]をクリックすると、使用できる(ファイルに 定義されていない)キー番号が表示されます。インデックスを作成す るときは、使用するキー番号を選択します。 3. [エディタの起動]をクリックすると、[ファイル情報エディタ]ダイア ログ ボックスを表示できます。ここには、キーの詳細情報が表示され ます。 [リストのリフレッシュ]をクリックすると、データ ファイルか らキー情報が読み込まれ、 [データファイルの既存キー番号]および [作成に使用するキー番号]リストを更新することができます。イン デックスを作成する前に[リストのリフレッシュ]ボタンをクリックす る必要があります。 4. [インデックスの作成]ダイアログ ボックスに適切な情報を設定した ら、 [実行]をクリックしてインデックスを作成します。インデックス の作成に要する時間は、ファイルに含まれるデータ量に応じて異なりま す。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-21 インデックスの削除 ➤ インデックスを削除するには 1. [インデックス]メニューの[削除]をクリックします。[インデックス の削除]ダイアログ ボックス(図 7-12)が表示されます。 図 7-12 [インデックスの削除]ダイアログ 2. [インデックスの削除]ダイアログ ボックスの以下のデータ ボックスに 値を設定します。 インデックスを削除するデータ ファイルの名前を指定します。 [MicroKernel ファイル] [既存のキー番号] [リストのリフレッシュ]ボタンをクリックすると、ファイルに定義さ れているキー番号の一覧が表示されます。削除するインデックスの キー番号をクリックして選択します。ファイルにシステム定義のログ キーが含まれている場合は、リストに[SYSKEY]が表示されます。 [SYSKEY]を選択すると、システム定義のログ キーをファイルから 削除できます。 キー番号が連続するように再割当てを行います。このボタンをクリッ クすると、インデックスの削除によって生じたキー番号の欠番をなく すことができます。 [番号再割当て] 3. [リストのリフレッシュ]ボタンをクリックして、目的のファイルから 最新のキー情報を取得します。 レコードのインポート、エクスポート、およびコピー [データ]メニューの[ロード]、 [保存]、および[コピー]コマンドを使用 すると、データ ファイルのレコードをインポート、エクスポート、および コピーすることができます。また、ロールフォワード機能を使用すると、シ ステム障害の発生後にデータの回復を行うこともできます。 7-22 Pervasive.SQL User’s Guide ASCII ファイルフォーマットのインポートとエクスポート データをエクスポートするとき、ASCII(シーケンシャル)ファイルのレ コードは次のフォーマットを持ちます。また、ASCII テキストエディタを 使って、次の仕様に準拠したインポートファイルを作成することもできま す。なお、大部分のテキストエディタではバイナリデータの編集はサポート されていません。 u 先頭のフィールドは左揃えの整数(ASCII フォーマット)で、レコード の長さを指定します(この値を計算するときは、各行を区切るキャリッ ジリターン / ラインフィードは無視してください) 。この先頭フィールド の値はデータファイルで指定されているレコード長と一致します。 w 固定長レコードを含むファイルの場合、指定する長さはデータファ イルのレコード長と等しくなるようにしてください。 w 可変長レコードを含むファイルの場合、指定する長さは少なくとも データファイルの固定長レコード長と等しくなければなりません。 u 長さフィールドの後には区切り文字(カンマまたはブランク)が続きま す。 u 区切り文字の後にレコードのデータが続きます。データの長さは、長さ フィールドで指定したバイト数と厳密に一致している必要があります。 テキストエディタを使ってインポート ASCII ファイルを作成している 場合は、各レコードの末尾に、そのレコードが適切な長さになるように 必要な数のブランクスペースを埋め込みます。 u キャリッジリターン / ラインフィード(16 進で 0D0A)は各行を区切りま す。メンテナンスユーティリティはキャリッジリターン / ラインフィー ドをデータファイルに挿入しません。 u ファイルの最後の行は end-of-file(Ctrl + Z または 16 進で 1A)でなければ なりません。大部分のテキストエディタはファイルの末尾にこれを自動 的に挿入します。 図 7-13 に、インポート ASCII ファイルの正しいフォーマットを示します。 次の例では、データファイルのレコード長は 40 バイトと定義されています。 図 7-13 インポート ASCII ファイルのファイルフォーマット 40, The record follows the comma delimiter <CR/LF> データ Data キャリッジ リターン Carriage Return or Line Feed ラインフィールド Comma Delimiter カンマ区切り文字 Record Length レコード長 適切な長さになるように Blank Pad for Proper Length ブランクを埋め込む メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-23 ASCII ファイルからのレコードのインポート メンテナンスユーティリティを使用すると、ASCII シーケンシャルファイル から標準的なデータファイルにレコードをインポートできます。このオペ レーションを実行しても、データの変換は行われません。インポートファイ ルを作成するには、テキストエディタまたはメンテナンスユーティリティを 使用します( 「ASCII ファイルへのレコードのエクスポート」を参照してく ださい) 。 ➤ ASCII データをインポートするには 1. [データ]メニューの[ロード]をクリックします。 2. [データのロード]ダイアログ ボックス(図 7-14)が表示されます。 図 7-14 [データのロード]ダイアログ 指定する ASCII ファイルは、「ASCII ファイルフォーマットのインポー トとエクスポート」で説明した仕様に準拠している必要があります。指 定する標準データファイルのレコード長は、ASCII ファイルに含まれる レコードと互換性がなければなりません。 3. [実行]ボタンをクリックし、レコードをインポートします。 データのインポートが行われているとき、メンテナンスユーティリティ には、インポートされたレコードの数、進捗状況のパーセンテージ、お よびステータスメッセージが表示されます。このとき、メンテナンス ユーティリティでは別の作業を続けることもできます(たとえば、別の [データのロード]ダイアログをオープンできます)。 ASCII ファイルへのレコードのエクスポート メンテナンスユーティリティを使用すると、データファイルから ASCII シーケンシャルファイルにレコードをエクスポートすることができます。 ➤ レコードをエクスポートするには 1. [データ]メニューの[保存]をクリックします。[データの保存]ダイ アログ (図 7-15)が表示されます。 7-24 Pervasive.SQL User’s Guide 図 7-15 [データの保存]ダイアログ 2. [データの保存]ダイアログで、次のオプションを適切に設定します。 [保存元 MicroKernel ファイル] エクスポートするレコードを含む既存の MicroKernel 互換ファイルの名前 を指定します。 [保存先シーケンシャル ファイル] 作成するシーケンシャルファイルの名前を指定します。 [インデックスの使用] エクスポートするレコードをソートするときに指定されたインデックスを 使用します。デフォルトの設定で、インデックスは使用されません。つま り、レコードはデータファイル内での物理ポジションに従ってエクスポー トされます。 [内部インデックス番号]: 指定されたキー番号を使用します。 [保存元 MicroKernel ファイル]ボック スのファイルを変更した場合は、 [インデックスリストをリフレッシュ]ボ タンをクリックして使用可能なインデックスを更新できます。 [外部インデックスファイル]: 指定された外部インデックスを使用します(外部インデックスを作成する 方法については、 「インデックスの作成」を参照してください) 。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-25 [前方]: これがデフォルトの設定で、ファイルの先頭から末尾に向かって データの読み込みが行われます。 [方向] [後方]: ファイルの末尾から先頭に向かってデータの読み込みが行われま す。 [前方から後方]: まず、ファイルの先頭から末尾に向かったデータの読み 込みが行われます。エラーが発生すると、ファイルの末尾から先頭に向 かってデータの読み込みが開始され、直前にエラーが発生したレコードま たは別のエラーが発生したレコードまで読み込みが続けられます。 [後方から前方]: まず、ファイルの末尾から先頭に向かったデータの読み 込みが行われます。エラーが発生すると、ファイルの先頭から末尾に向 かってデータの読み込みが開始され、直前にエラーが発生したレコードま たは別のエラーが発生したレコードまで読み込みが続けられます。 3. [実行]ボタンをクリックし、レコードをエクスポートします。「ASCII ファイルフォーマットのインポートとエクスポート」で説明したフォー マットを使って、指定した ASCII シーケンシャルファイルが作成され ます。この後、このファイルを編集し、 [ロード]コマンドを使って、編集したテキストを別の標準データファ イルにインポートすることもできます。詳細については、「ASCII ファ イルからのレコードのインポート」を参照してください。 データファイル間でのレコードのコピー メンテナンスユーティリティを使用すると、2 つの標準データファイルの間 でデータをコピーすることができます。 ➤ データをコピーするには 1. [データ]メニューの[コピー]をクリックします。[データのコピー] ダイアログ(図 7-16)が表示されます。 図 7-16 [データのコピー]ダイアログ 2. [コピー元 MicroKernel ファイル]ボックスにコピー元となるファイル の名前を入力し、 [コピー先 MicroKernel ファイル]ボックスにコピー 先のパスを指定します。 7-26 Pervasive.SQL User’s Guide 指定した両方のデータファイルのレコード長は同じでなければなりませ ん。 システム障害後のデータの回復 ロールフォワード機能を使用すると、最後のバックアップからシステム障害 が発生するまでの間にデータファイルに加えられた変更を回復することがで きます。MicroKernel は変更内容をアーカイブログファイルに格納していま す。システム障害が発生した場合は、データファイルのバックアップコピー をリストアし、ロールフォワード機能を使って、ログに格納されているすべ ての変更内容をバックアップコピーに適用することができます。 注意 システム障害が発生する前に、MicroKernel の[アーカイブ ロギングの実行]オプ ションがオンになっていて、ファイルをバックアップしていないと、ロールフォワー ド機能を利用することはできません。ファイルのバックアップについては、「ファイ ルのバックアップ」を参照してください。 システム障害が発生した場合は、バックアップをリストアして MicroKernel を起動し、すぐにロールフォワード機能を実行します。ファイルへのアクセ スを行う前に、 [ロールフォワード]コマンドを実行する必要があります。 このように操作することで、データファイルに書き込まれたデータがシステ ム障害が発生した時点の状態になることが保証されます。特に、ファイルへ の書き込み、ファイルのロック、またはファイルに対する排他処理を実行す る前に、ロールフォワードを実行する必要があります。 ➤ ロールフォワードオペレーションを実行するには 1. [データ]メニューの[ロールフォワード]をクリックします。[ロール フォワード]ダイアログ(図 7-17)が表示されます。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-27 図 7-17 [ロールフォワード]ダイアログ 2. [単一ファイル]、 [ファイルのリスト]、 [ボリューム名]、 [ドライブ名] の中から適切なオペレーションのタイプを選択します。 [ボリューム名] または[ドライブ名]を選択するときは、SYS:¥、//SERVER/SYS/、ま たは ¥¥SERVER¥SYS:¥ のように、名前の最後に円記号(¥)またはス ラッシュ(/)を挿入する必要があります。 3. ロールフォワードタスクを実行するために必要なすべての Btrieve オペ レーションを含む、ダンプファイルと呼ばれるログファイルを生成する ことができます。 デフォルトの設定で、このファイルは作成されません。このファイルを 生成するには、 [ダンプファイルの作成]チェックボックスをオンにし ます。また、次のオプションを指定できます。 [ダンプファイルの作成のみ (ロールフォワードしない)] ダンプファイルだけを作成し、ロールフォワードオペレーションは実 行しないことを指定します。 [ダンプファイル名] ダンプファイルの名前を入力します。ファイル名にドライブ名または サーバ / ボリューム名を指定することはできません。また、ファイル 名の先頭は円記号(¥)またはスラッシュ(/)で始める必要がありま す。 [データバッファ長] 各 Btrieve オペレーションについて、ダンプファイルに書き込むデータ バッファのバイト数を指定します。 [キーバッファ長] 各 Btrieve オペレーションについて、ダンプファイルに書き込むキー バッファのバイト数を指定します。 7-28 Pervasive.SQL User’s Guide [16 進で数を表示] このチェックボックスをオンにすると、ダンプファイルに含まれる数 値が 16 進表記になります。このチェックボックスをオフにすると、数 値は ASCII 形式で表記されます。 [詳細] ダンプファイルに追加情報(ユーザ名、ネットワークアドレス、タイ ムスタンプなど)を書き込みます。 注意 キーバッファまたはデータバッファが特定の Btrieve オペレーションの入力パラメー タでない場合、ダンプファイルには何も書き込まれません。 4. [実行]ボタンをクリックし、ダンプファイルを生成するか、ロール フォワードオペレーションを実行します。データが有効な場合は、 [ロールフォワードステータス]ダイアログ(図 7-18)が表示されま す。 図 7-18 [ロールフォワードステータス]ダイアログ ファイルの処理が終了すると、そのファイルがリストボックスに追加さ れます。このリストボックスには、ファイル名とロールフォワードオペ レーションから返された Pervasive.SQL のステータスコードが表示され ます。 ファイルの処理中にエラーが発生すると、 [ロールフォワードエラー] ダイアログ(図 7-19)が表示されます。このダイアログでは、このダ イアログを再表示することなく処理を継続するか、処理を継続して必要 な場合にこのダイアログを再表示するか、あるいはファイルの処理を中 止するかを選択することができます。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-29 図 7-19 [ロールフォワードエラー]ダイアログ 7-30 Pervasive.SQL User’s Guide Btrieve コマンド ライン メンテナンス ユーティリティ(BUTIL) ) ユーティリティ( コマンドラインインタフェースを使用したい場合や、Continuous オペレー ションを開始または停止したい場合に、このユーティリティを使用します。 Btrieve メンテナンスユーティリティにはコマンドライン形式のものも用意 されており、サーバ上で実行したり(NetWare サーバでは NLM として、 Windows NT サーバでは DOS コマンドプロンプトから)、DOS、Win32、お よび OS/2 クライアントでローカルに実行できます。コマンドラインメンテ ナンスユーティリティのコマンドは、コマンドラインから直接、または作成 したコマンドファイルを介して実行できます。BUTIL とも呼ばれる Btrieve コマンドラインメンテナンスユーティリティでコマンドを実行する前に、 「BUTIL の概要」で説明されているいくつかの基本的な考え方と操作方法を 理解しておく必要があります。 メンテナンスユーティリティは、次のような一般的なファイルおよびデータ 操作を実行します。 u データのインポートとエクスポート u データファイルの作成と修正 u データベースのバックアップ u システム障害後のデータの回復 u データファイル情報の表示 u Btrieve インタフェースモジュールのバージョン表示 u Btrieve エンジンおよびリクエスタのアンロード(DOS のみ) BUTIL の概要 ここでは、コマンドラインメンテナンスユーティリティを使用する前に知っ ておく必要のある情報について説明します。 u コマンド u コマンドフォーマット u BUTIL の基本的な考え方 コマンド 表 7-6 コマンド ライン メンテナンス ユーティリティのコマンド コマンド 説明 CLONE 既存のファイルスペックを使って、空のデータファイルを新規作成し ます。 CLROWNER データファイルのオーナネームを消去します。 COPY あるデータファイルの内容を別のデータファイルにコピーします。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-31 表 7-6 コマンド ライン メンテナンス ユーティリティのコマンド 続き コマンド 説明 CREATE データファイルを作成します。 DROP インデックスを削除します。 ENDBU バックアップ対象として定義されているデータファイルを対象に Continuous オペレーションを終了します(Win32 および NLM バー ジョンでのみ使用できます)。 INDEX 外部インデックスファイルを作成します。 LOAD シーケンシャルファイルの内容をデータファイルにロードします。 RECOVER データファイルからシーケンシャルにデータを読み込み、その結果を シーケンシャルファイルに書き込みます。 ROLLFWD 最後のバックアップからシステム障害が発生するまでの間にデータ ファイルに加えられた変更を回復します(DOS バージョンでは ROLLFWD コマンドはサポートされていません)。 SAVE キー順にデータを読み込み、その結果をシーケンシャルファイルに書 き込みます。 SETOWNER データファイルにオーナネームを割当てます。 SINDEX インデックスを作成します。 STARTBU バックアップ対象として定義されているデータファイルを対象に Continuous オペレーションを開始します(Win32 および NLM バー ジョンでのみ使用できます)。 STAT データファイルのファイル属性と現在のサイズに関する情報をレポー トします。 STOP(DOS のみ) Btrieve エンジンおよびリクエスタをアンロードします。 VER サーバにロードされている MicroKernel Database エンジンと Btrieve インタフェースモジュールのバージョンを表示します。 コマンド構文の表示 各コマンドの使い方の概要を表示するには、ファイルサーバで次のコマンド を実行します。 BUTIL 図 7-20 のようなメンテナンスユーティリティのコマンド画面が表示されま す。 7-32 Pervasive.SQL User’s Guide 図 7-20 メンテナンスユーティリティのコマンド画面 注意 /S オプションはコマンドラインユーティリティの NetWare バージョンにのみ適用さ れます。また、NetWare では、sys:¥demodata¥tuition.mkd のように、ファイル名は フルパスで指定する必要があります。 コマンドフォーマット 次に、メンテナンスユーティリティのコマンドラインのフォーマットを示し ます。 BUTIL [- コマンド [ パラメータ ...]] | @ コマンドファイル コマンド COPY などの、メンテナンスユーティリティのコマンド。コマンド名の先 頭にはダッシュ(-)を入力し、ダッシュの前にはスペースを挿入する必要 があります。コマンドの一覧については、表 7-6 を参照してください。 パラメータ コマンドが必要とする情報。詳細については、各コマンドの説明を参照し てください。 コマンドファイル コマンドファイルのフルパス名。ファイル名の先頭にはアットマーク(@) を入力する必要があります。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-33 BUTIL の基本的な考え方 コマンド ファイル コマンドファイルを使用すると、次の操作を行うことができます。 u 長すぎてコマンドラインに入りきらないコマンドを実行する。 u 頻繁に使用するコマンドを実行する(コマンドファイルに目的のコマン ドを 1 度書き込んでしまえば、それ以降は必要に応じて何度でもそのコ マンドファイルを実行できます) 。 u 次のコマンドフォーマットを使って、コマンドを実行した後、出力を ファイルに書き込む。 BUTIL @ コマンドファイル [ コマンド出力ファイル ] 出力ファイルには、実行したそれぞれのコマンドについて、コマンド名 とその結果が書き込まれます。サーバのコンソール画面にも同じメッ セージが表示されます。 u 複数のコマンドを順に実行する。 コマンドファイルには、コマンドラインで必要な情報と同じものを入力しま す。 コマンドファイルの規則 メンテナンスユーティリティのコマンドファイルを作成するときは、次の規 則に従ってください。 u 1 つのパラメータを 2 行以上に分割することはできません。 u 各コマンドの最後には、<end> または [end] と入力します。 コマンドファイルの例 次に、サンプルコマンドファイル COPYCRS.CMD の内容を示します。この ファイルでは、BUTIL - CLONE コマンドを呼出し、COURSE.MKD ファイル を複製して NEWCRS.MKD ファイルを作成します。さらに、-CREATE コマ ンドを呼出し、NEWFILES.DES ディスクリプションファイルの定義を使っ て NEWFILE.DTA ファイルを作成します。 -clone newcrs.mkd course.mkd <end> -create newfile.dta newfiles.des <end> 次のコマンドは、COPYPATS.CMD ファイルを使用し、その出力を COPYPATS.OUT ファイルに書き込みます。 butil @copypats.cmd copypats.out 7-34 Pervasive.SQL User’s Guide ディスクリプション ファイル ディスクリプションファイルとは、メンテナンスユーティリティがデータ ファイルやインデックスの作成に使用するファイルおよびキースペックの記 述を含んだ ASCII ファイルのことです。ユーザによっては、作成したデー タファイルに関する情報を格納するための媒体としてディスクリプション ファイルを利用することもあります。ディスクリプションファイルの詳細に ついては、付録 B「ディスクリプション ファイル」を参照してください。 拡張ファイルのサポート MicroKernel データファイルのサイズは、オペレーティングシステムのファ イルサイズの制限を超えることができます。MicroKernel 拡張ファイルから シーケンシャルファイルにデータをエクスポートすると、物理的なフォー マットが異なるため、シーケンシャルファイルのサイズがファイルサイズの 制限を超えてしまう場合があります。 コマンドラインメンテナンスユーティリティでは、シーケンシャルファイル がファイルサイズの制限(2 GB)を超えたことを検出し、拡張(エクステ ンション)ファイルの作成を開始します。この処理は自動的に実行されま す。ただし、拡張ファイルと元のシーケンシャルファイルを同じボリューム に格納できなければなりません。エクステンションファイルでは、 MicroKernel Database エンジンに似た名前の規則が使用されます。最初に作 成されるエクステンションファイルは、ベースファイルと同じ名前と 「.~01」という拡張子を持ちます。それ以降に作成されるエクステンション ファイルは、それぞれ「.~02」 、「.~03」、... のような拡張子を持ちます。拡 張子の番号は 16 進で表示されます。作成できるエクステンションファイル の最大数は 255 です。255 番目のエクステンションファイル(最後のエクス テンションファイル)の拡張子は「.~ff」になります。 サイズの大きなファイルをシーケンシャルファイルに保存または回復する方 法については、それぞれ「SAVE」または「RECOVER」を参照してくださ い。また、シーケンシャルファイルからデータをインポートするときは、 ファイルの拡張子がチェックされ、エクステンションファイルのデータが自 動的にロードされます。 オーナネーム MicroKernel では、オーナネームを指定してファイルへのアクセスを制限す ることができます。オーナネームはオプションであるため、このユーティリ ティで使用するファイルはオーナネームを必要とする場合もあれば、そうで ない場合もあります。ファイルがオーナネームを必要とする場合は、/O オ プションを使ってオーナネームを指定します。/O オプションの後には、次 のいずれかを指定することができます。 u 1 つのオーナネーム。 u 最大 8 つまでのオーナネームのリスト。それぞれのオーナネームはカン マで区切ります。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-35 u アスタリスク(*)。オーナネームの入力を要求するメッセージが表示さ れます。ROLLFWD コマンドの場合は、カンマで区切ったオーナネー ムのリストを要求するメッセージが表示されます。 オーナネームでは大文字と小文字が区別されます。このため、Sandy と SANDY は同じであるとは見なされません。コマンドラインにオーナネーム を入力すると、先頭のブランクが削除されます。アスタリスクを指定した場 合は、先頭のブランクが削除されることはありません。 エラー メッセージのリダイレクト エラーメッセージをリダイレクトするときは、ファイルのフルパス名(ドラ イブ名または UNC パスを含む)を指定する必要があります。 ➤ Windows NT サーバ上でエラーメッセージをファイルにリダイレクトするには BUTIL -command commandParameters > filePath ➤ NetWare サーバ上でエラーメッセージをファイルにリダイレクトするには LOAD BUTIL -command commandParameters (CLIB_OPT) />filepath ASCII ファイルフォーマット 詳細については、 「Btrieve 対話型メンテナンスユーティリティ」の「ASCII ファイルフォーマットのインポートとエクスポート」を参照してください。 プラットフォームによるファイル名指定の規則 Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データ ファイルがカレントディレクトリと同じディレクトリにあればパス名を指定 する必要はありません。 データのインポートとエクスポート ここでは、BUTIL の COPY、LOAD、RECOVER、および SAVE コマンドを 使って、データのインポートとエクスポートを行う方法について説明しま す。 表 7-7 データのインポートとエクスポートを行うコマンド コマンド 説明 COPY あるデータファイルの内容を別のデータファイルにコピーします。 LOAD シーケンシャルファイルの内容をデータファイルにロードします。 RECOVER データファイルからシーケンシャルにデータを読み込み、その結果をシー ケンシャルファイルに書き込みます。 7-36 Pervasive.SQL User’s Guide 表 7-7 データのインポートとエクスポートを行うコマンド コマンド 説明 SAVE キー順にデータを読み込み、その結果をシーケンシャルファイルに書き込 みます。 COPY COPY コマンドは、一方の MicroKernel ファイルの内容をもう一方の MicroKernel ファイルにコピーします。COPY コマンドでは、入力データ ファイルの各レコードを取得して、それを出力データファイルに挿入しま す。ただし、両方のファイルのレコードサイズは同じでなければなりませ ん。レコードのコピーが終了すると、新しいデータファイルに挿入したレ コードの総数が表示されます。 注意 COPY コマンドは、RECOVER コマンドと LOAD コマンドを続けて実行するのと同 じ機能を 1 つのステップで実行します。 COPY コマンドを使用すると、古いファイルのデータを含み、新しいキー属 性を持つデータファイルを作成することができます。 ➤ MicroKernel データファイルをコピーするには 1. CREATE コマンドを使って、目的のキー属性(キーポジション、キー 長、または重複可能キー値など)を含む空のデータファイルを作成しま す。 または CLONE コマンドを使って、既存のファイルのキー属性を使った空の データファイルを作成します。 2. COPY コマンドを使って、既存のファイルの内容を新しく作成したデー タファイルにコピーします。 フォーマット BUTIL -COPY < ソースファイル > < 出力ファイル > [/O< オーナネーム 1 |*>[/O< オーナネーム 2 |*>]] [/S] ソースファイル レコードの転送元となるデータファイルのフルパス名。Windows NT/9x ま たは OS/2 に対応した BUTIL を実行するときは、データファイルがカレン トディレクトリにあればパス名を指定する必要はありません。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-37 出力ファイル レコードの転送先となるデータファイルのフルパス名。出力データファイ ルには、既にデータが含まれている場合とそうでない場合があります。 Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データ ファイルがカレントディレクトリにあればパス名を指定する必要はありま せん。 /O オーナネーム 1 ソースデータファイルにオーナネームが割当てられている場合は、その オーナネーム。出力データファイルのみでオーナネームが必要な場合は、 /O オプションに続けて < オーナネーム 1> の代わりにブランクを指定しま す(使用例を参照してください) 。 /O オーナネーム 2 出力データファイルにオーナネームが割当てられている場合は、そのオー ナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次のコマンドは、COURSE.MKD のレコードを NEWCRS.MKD にコピーし ます。COURSE.MKD 入力ファイルはオーナネームを必要としませんが、 NEWCRS.MKD 出力ファイルは Pam というオーナネームを使用します。 butil -copy course.mkd newcrs.mkd /o /oPam この例で、最初の /O を省略すると、Pam というオーナネームが出力データ ファイルではなく、入力データファイルに属するものと見なされます。 LOAD LOAD コマンドは、入力 ASCII シーケンシャルファイルからデータファイ ルにレコードを挿入します。指定するシーケンシャルファイルは、通常の単 一ファイルでも、拡張ファイル(ベースファイルといくつかのエクステン ションファイル)でもかまいません。LOAD コマンドでは、入力シーケン シャルファイルに含まれているデータに対する変換を実行しません。データ ファイルにレコードを転送した後、ロードされたレコードの総数が表示され ます。 注意 LOAD コマンドは、出力ファイルをアクセラレイティドモードでオープンします。つ まり、LOAD オペレーションの実行中は、ファイルのログが作成されないということ です。アーカイブログを使用している場合は、LOAD コマンドを使用した後で、もう 一度データファイルをバックアップしてください。 拡張ファイル : LOAD コマンドが次のエクステンションファイルを検出すると、ロー ドプロセスが自動的に継続されます。このため、SAVE または RECOVER コマンドで 作成したエクステンションファイルは削除しないでください。たとえば、3 つのエク ステンションファイルがあり、第 2 のエクステンションファイルを削除していると、 7-38 Pervasive.SQL User’s Guide 第 1 のエクステンションファイルを処理した後で、レコードのロードは停止します。 直前に実行した SAVE または RECOVER コマンドが 3 つのエクステンションファイ ルを作成し、それとは別に以前に実行した SAVE または RECOVER コマンドで作成 した第 4 のエクステンションファイルが存在する場合、LOAD では、第 4 のエクステ ンションファイルからもレコードを読み込み、それらを MicroKernel ファイルに挿入 してしまいます。このため、不必要な第 4 のエクステンションファイルが存在する場 合は、LOAD コマンドを起動する前にそれを削除しておく必要があります。 LOAD コマンドを実行する前に、入力シーケンシャルファイルとデータファ イルを作成しておく必要があります。入力シーケンシャルファイルは標準的 なテキストエディタまたはアプリケーションを使って作成することができま す。入力シーケンシャルファイルは、必要なファイルフォーマットを持って いなければなりません (「ASCII ファイルフォーマットのインポートとエクスポート」を参照してく ださい) 。また、データファイルは、CREATE または CLONE コマンドを 使って作成することができます。 フォーマット BUTIL -LOAD < シーケンシャルファイル > < 出力ファイル > [/O< オーナ ネーム |*>] [/S] シーケンシャル ファイル データファイルにロードするレコードを含んだシーケンシャルファイルの フルパス名。Windows NT の場合、データファイルがカレントディレクト リにあればパス名を指定する必要はありません。 出力ファイル レコードを挿入するデータファイルのフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレント ディレクトリにあればパス名を指定する必要はありません。 /O オーナネーム 必要な場合は、データファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次の例は、COURSE.TXT ファイルのシーケンシャルレコードを COURSE.MKD ファイルにロードします。COURSE.MKD ファイルのオーナ ネームは Sandy です。 butil -load course.txt course.mkd /oSandy メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-39 RECOVER RECOVER コマンドは、MicroKernel ファイルからデータを取り出し、それ を LOAD コマンドで使用する入力シーケンシャルファイルと同じフォー マットを持つシーケンシャルファイルに書き込みます。このコマンドは、破 損した MicroKernel ファイルから一部または全部のデータを取り出すときに 役立ちます。RECOVER コマンドを使用すると、すべてではないにしても、 ファイルのレコードの多数を取り出すことができます。この後は、LOAD コ マンドを使って、回復されたレコードを新しい破損していない MicroKernel ファイルに挿入することができます。 注意 メンテナンスユーティリティでは、レコードに含まれるデータを対象に変換を実行し ません。このため、テキストエディタを使ってバイナリデータを含む出力ファイルを 編集する場合は、一部のテキストエディタがバイナリデータを変更し、予想できない 結果になることがある点に注意してください。 フォーマット BUTIL -RECOVER < ソースファイル > < シーケンシャルファイル > [/O< オーナネーム |*>] [/S] [/Q] [/J] [/I] ソースファイル データを回復するデータファイルのフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレント ディレクトリにあればパス名を指定する必要はありません。 シーケンシャル ファイル 回復したデータを格納するシーケンシャルファイルのフルパス名。 /O オーナネーム 必要な場合は、データファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 /Q 既存のシーケンシャルファイルを置き換えるかどうかを指定します。デ フォルトの設定で、メンテナンスユーティリティは既存のファイルを上書 きします。このオプションを指定している場合に同名のファイルが存在す ると、エラーメッセージが返されます。 また、メンテナンスユーティリティでは、回復の対象となる MicroKernel ファイルが拡張ファイルであるかどうかもチェックします。拡張ファイル である場合は、存在する可能性のあるエクステンションファイルと同名の ファイルが存在するかどうかもチェックされます。これらのファイルの 1 つが存在すると、エラーメッセージが返されます。 7-40 Pervasive.SQL User’s Guide /J ファイルを「逆方向」に読み込むことを指定します。このオプションを指 定すると、STEP LAST と STEP PREVIOUS オペレーションを使って、 MicroKernel ファイルのデータが回復されます。デフォルトの設定では、 STEP FIRST と STEP NEXT オペレーションを使ってデータの読み込みが行 われます。 /I ファイルを先頭から末尾に向かって読み込むことを指定します。デフォル トの設定は先頭から末尾に向かって「順方向」に読み込むことですが、こ のオプションを使って、 「順方向」と「逆方向」の読み込みを組み合わせる こともできます。つまり、/I および /J オプションの両方をこの順序で指定 すると、まず、ファイルの先頭から末尾に向かって「順方向」にデータの 読み込みが行われます。エラーが発生すると、ファイルの末尾から先頭に 向かって「逆方向」にデータの読み込みが開始され、直前にエラーが発生 したレコードまたは別のエラーが発生したレコードまで読み込みが続けら れます。 また、/J オプションを先に指定すると、まず「逆方向」の読み込みが行わ れた後、 「順方向」の読み込みが行われます。 ソースファイルに含まれる各レコードで、RECOVER コマンドがステータス コード 54(レコードの可変長部分が破損しています)を受け取ると、現在 のレコードから取得できたすべてのデータがシーケンシャルファイルに書き 込まれ、回復のプロセスが継続されます。 拡張ファイルを対象に RECOVER コマンドを実行するときは、次のメッ セージが表示されます。 u 最後に作成されたエクステンションファイルの名前に関する情報を通知 します。 u 次のエクステンションファイルが存在するかどうかチェックし、存在す る場合は、それを削除するようにメッセージを表示します。 u シーケンシャル拡張ファイルを異なるロケーションに移動する場合は、 ベースファイルとすべてのエクステンションファイルの移動を要求する メッセージを表示します。 使用例 次の例は、COURSE.MKD ファイルからレコードを取り出し、それらを COURSE.TXT ファイルに書き込みます。 butil -recover course.mkd course.txt SAVE SAVE コマンドは、指定されたインデックスを使って MicroKernel ファイル のデータを取得し、それらを LOAD コマンドで必要とされるフォーマット と互換性のある ASCII シーケンシャルファイルに書き込みます。このコマ ンドを実行した後、シーケンシャルファイルを編集し、LOAD コマンドを メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-41 使って、編集したデータを別のデータファイルに格納することができます (ASCII ファイルフォーマットの詳細については、 「ASCII ファイルフォー マットのインポートとエクスポート」を参照してください)。 SAVE コマンドでは、入力データファイルに含まれる各レコードについて、 1 つのレコードを出力シーケンシャルファイルに生成します。処理が完了す ると、保存されたレコードの総数が表示されます。 注意 メンテナンスユーティリティでは、レコードに含まれるデータを対象に変換を実行し ません。このため、テキストエディタを使ってバイナリデータを含む出力ファイルを 編集する場合は、一部のテキストエディタがバイナリデータを変更し、予想できない 結果になることがある点に注意してください。 フォーマット BUTIL -SAVE < ソースファイル > < シーケンシャルファイル > [Y インデックスファイル | N < キー番号 | -1>] [/O< オーナネーム 1 |*> [/O< オーナネーム 2 |*>]] [/S] [/Q] [/J] [/I] ソースファイル 保存するレコードを含むデータファイルのフルパス名。Windows NT/9x ま たは OS/2 に対応した BUTIL を実行するときは、データファイルがカレン トディレクトリにあればパス名を指定する必要はありません。 シーケンシャル ファイル ユーティリティを使ってレコードを格納するシーケンシャルファイルのフ ルパス名。 インデックスファイル デフォルトの設定である最小のキー番号を使ってレコードを保存しない場 合、レコードの保存に使用する外部インデックスファイルのフルパス名。 キー番号 デフォルトの設定である最小のキー番号を使ってレコードを保存しない場 合、レコードの保存に使用するキー番号(0 以外の値)。 -1 Btrieve の Step オペレーションを使って、物理的順序に従ってレコードを保 存する場合に指定します。 / オーナネーム 1 必要な場合は、ソースファイルのオーナネーム。インデックスファイルの みがオーナネームを必要とする場合は、< オーナネーム 1> に対する /O オ プションの直後にブランクを入力します。 / オーナネーム 2 必要な場合は、インデックスファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 7-42 Pervasive.SQL User’s Guide /Q 既存のシーケンシャルファイルを置き換えるかどうかを指定します。デ フォルトの設定で、メンテナンスユーティリティは既存のファイルを上書 きします。このオプションを指定している場合に同名のファイルが存在す ると、エラーメッセージが返されます。 また、メンテナンスユーティリティでは、保存の対象となる MicroKernel ファイルが拡張ファイルであるかどうかもチェックします。拡張ファイル である場合は、存在する可能性のあるエクステンションファイルと同名の ファイルが存在するかどうかもチェックされます。これらのファイルの 1 つが存在すると、エラーメッセージが返されます。 /J ファイルを「逆方向」に読み込むことを指定します。このオプションを指 定すると、GET LAST と GET PREVIOUS オペレーションを使って、 MicroKernel ファイルのデータが保存されます。デフォルトの設定では、 GET FIRST と GET NEXT オペレーションを使ってデータの保存が行われま す。 /I ファイルを先頭から末尾に向かって読み込むことを指定します。デフォル トの設定は先頭から末尾に向かって「順方向」に読み込むことですが、こ のオプションを使って、 「順方向」と「逆方向」の読み込みを組み合わせる こともできます。つまり、/I および /J オプションの両方をこの順序で指定 すると、まず、ファイルの先頭から末尾に向かって「順方向」にデータの 読み込みが行われます。エラーが発生すると、ファイルの末尾から先頭に 向かって「逆方向」にデータの読み込みが開始され、直前にエラーが発生 したレコードまたは別のエラーが発生したレコードまで読み込みが続けら れます。 また、/J オプションを先に指定すると、まず「逆方向」の読み込みが行わ れた後、 「順方向」の読み込みが行われます。 拡張ファイルを対象に SAVE コマンドを実行するときは、次のメッセージが 表示されます。 u 最後に作成されたエクステンションファイルの名前に関する情報を通知 します。 u 次のエクステンションファイルが存在するかどうかチェックし、存在す る場合は、それを削除するようにメッセージを表示します。 u 拡張ファイルを異なるロケーションに移動する場合は、ベースファイル とすべてのエクステンションファイルの移動を要求するメッセージを表 示します。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-43 使用例 次の 2 つの例は、SAVE コマンドを使って、データファイルからレコードを 取得する方法を具体的に示しています。 次の例は、NEWCRS.IDX 外部インデックスファイルを使って COURSE.MKD ファイルからデータを取得し、それらを COURSE.TXT とい う名前のシーケンシャルファイルに格納します。 butil save course.mkd course.txt newcrs.idx 次の例は、キー番号 3 を使って COURSE.MKD ファイルからレコードを取 得し、それらを COURSE.TXT という名前のシーケンシャルファイルに格納 します。 butil -save course.mkd course.txt n 3 データファイルの作成と修正 ここでは、BUTIL の CLONE、CLROWNER、CREATE、DROP、INDEX、 SETOWNER、および SINDEX コマンドを使って、データファイルの作成と 変更を行う方法について説明します。またここでは、Btrieve データファイ ルに含まれる未使用のスペースを削除する方法についても説明します。詳細 については、 「Btrieve データファイルのコンパクト化」を参照してください。 表 7-8 データファイルの作成と変更を行うコマンド コマンド 説明 CLONE 既存のファイルスペックを使って、空のデータファイルを新規作成します。 CLROWNER データファイルのオーナネームを消去します。 CREATE データファイルを作成します。 DROP インデックスを削除します。 INDEX 外部インデックスファイルを作成します。 SETOWNER データファイルにオーナネームを割当てます。 SINDEX インデックスを作成します。 7-44 Pervasive.SQL User’s Guide CLONE CLONE コマンドは、既存のファイルと同じファイルスペック(追加イン デックスは含みますが、オーナネームは除外します)を使って、新しい空の ファイルを作成します。新しいデータファイルには、既存のファイルに含ま れる定義済みのキー属性(キーポジション、キー長、または重複可能キーな ど)がすべて含まれます。 CLONE コマンドは、ファイルのバージョンを除いて、ファイル情報に影響 を与える MicroKernel の環境設定オプション( [システム データ]など) をすべて無視します。CLONE コマンドを実行すると、[作成ファイルの バージョン]オプションで指定した MicroKernel ファイルのバージョンを 使って新規ファイルが作成されます。 フォーマット BUTIL -CLONE < 出力ファイル > < ソースファイル > [/O< オーナネーム | *>] [/S] 出力ファイル 新しい空のデータファイルに使用するフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレント ディレクトリにあればパス名を指定する必要はありません。 ソースファイル 複製元となる既存のデータファイルのフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレント ディレクトリにあればパス名を指定する必要はありません。 /O オーナネーム ソースデータファイルにオーナネームが割当てられている場合は、その オーナネーム。ただし、新しいデータファイルはオーナネームを持ちませ ん。詳細については、 「オーナネーム」を参照してください。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 説明 Btrieve v6.0 以降では、ページサイズが 1,024 バイトのデータファイルは最大 23 個までのキーセグメントの使用が許可されます。このため、既存のデー タファイルに 24 個のキーセグメントが含まれていて、ページサイズが 1,024 バイトの場合、CLONE コマンドでは新しいデータファイルのページサイズ を 2,048 バイトに設定します。このような処理は、既存のデータファイルが v6.0 よりも前のフォーマットを持ち、 [作成ファイルのバージョン]オプ ションが 5.x に設定されないで MicroKernel がロードされた場合に実行され ます。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-45 v7.x より前のファイルの複製を行っている場合は、新しいファイルが目的の ファイルフォーマットで作成されるように MicroKernel が環境設定されてい ることを確認してください。たとえば、v6.15 ファイルを v7.x フォーマット で複製する場合は、MicroKernel の[作成ファイルのバージョン]オプショ ンが 7.x に設定されていることを確認します。 注意 ソースファイルが v7.x フォーマットで、システムデータを含んでいない場合、 MicroKernel の環境設定に関係なく、出力ファイルにもシステムデータは含まれませ ん、既存のファイルにシステムデータを追加する方法については、『Getting Started with Pervasive.SQL』を参照してください。 ステータスコード 30(指定されたファイルは Btrieve 互換ファイルではあり ません)が返され、ソースファイルのヘッダページが壊れている可能性があ る場合は、ディスクリプションファイルとともに CREATE コマンドを使っ て、新しい MicroKernel ファイルを作成してみてください。 使用例 次のコマンドは、COURSE.MKD ファイルを複製して、NEWCRS.MKD ファ イルを作成します。 butil -clone newcrs.mkd course.mkd CLROWNER CLROWNER コマンドは、MicroKernel ファイルのオーナネームを消去しま す。 フォーマット BUTIL -CLROWNER < ソースファイル > </O< オーナネーム |*>> [/S] ソースファイル データファイルのフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレントディレクトリにあれ ばパス名を指定する必要はありません。 /O オーナネーム 消去するオーナネーム。詳細については、「オーナネーム」を参照してくだ さい。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 7-46 Pervasive.SQL User’s Guide 使用例 次のコマンドは、TUITION.MKD ファイルのオーナネームを消去します。こ のファイルに割当てられているオーナネームは Sandy です。 butil -clrowner tuition.mkd /oSandy CREATE CREATE コマンドは、ディスクリプションファイルで指定されている属性 を使って、空の MicroKernel ファイルを生成します。CREATE コマンドを使 用する前に、ディスクリプションファイルを作成して、新しいキー属性を指 定しておく必要があります。詳細については、付録 B「ディスクリプション ファイル」を参照してください。 フォーマット BUTIL -CREATE < 出力ファイル > < ディスクリプションファイル > [Y|N] [/S] 出力ファイル 作成する MicroKernel ファイルのフルパス名。指定したファイル名が既存 の MicroKernel ファイルの名前であると、既存のファイルの代わりに新し い空のファイルが作成されます。既存のファイルに格納されていたデータ はすべて失われ、回復することはできません。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレントディレク トリにあればパス名を指定する必要はありません。 ディスクリプション ファイル 新しい MicroKernel ファイルに使用するスペックを含んだディスクリプ ションファイルのフルパス名。 Y|N 既存のファイルを置き換えるかどうかを指定します。N を指定して、同名 の MicroKernel ファイルが存在すると、エラーメッセージが返されます。 デフォルトの設定は Y です。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次のコマンドは、CREATE.DES ディスクリプションファイルで定義されて いるスペックを使って、COURSE.MKD という名前のファイルを作成しま す。 butil -create course.mkd create.des メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-47 CREATE コマンドで使用するサンプルディスクリプション ファイル 図 7-21 に示すサンプルディスクリプションファイルは、MicroKernel ファイ ルを作成します。このファイルでは、ページサイズが 512 バイトで、2 つの キーを持つように指定されています。ファイルに含まれる各レコードの固定 長部分は 98 バイトに設定されています。また、可変長レコードがブランク トランケーション、データ圧縮、および可変長部割当てテーブル(VAT)を 使用しないように指定されています。空きスペーススレッショルドは 20% に設定されています。プリアロケーションは 100 ページに設定されていま す。ファイルを作成するとき、100 ページつまり 51,200 バイトがプリアロ ケートされます。 図 7-21 CREATE コマンドで使用するサンプルディスクリプションファイル キー 0 は、2 つの重複可能で変更可能でない文字列セグメントを含み、両方 のセグメントに対して 16 進の 20(スペース)というヌル値が指定されてい るセグメントキーです。キー 0 では、UPPER.ALT というコレーティング シーケンスが使用されます。 キー 1 は、重複は許可されませんが、変更は可能なセグメント化されていな い数値キーです。このキーは降順にソートされます。 DROP DROP コマンドは、ファイルからインデックスを削除し、削除したキーの後 に続くキー番号から 1 を引いて、残されたインデックスのキー番号を調整し ます。キー番号の調整を行わない場合は、削除するために指定したキー番号 に 128 を加算します。なお、キー番号の調整が可能なのは、v6.0 以降のファ イルのみです。 7-48 Pervasive.SQL User’s Guide フォーマット BUTIL -DROP < ソースファイル > < キー番号 | SYSKEY> [/O< オーナネーム |*>] [/S] ソースファイル インデックスを削除するファイルのフルパス名。Windows NT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレント ディレクトリにあればパス名を指定する必要はありません。 キー番号 削除するキーの番号。元のキー番号を保持するには、指定するキー番号に 128 というバイアス値を追加します。 SYSKEY システム定義ログキー(システムデータとも呼ばれます)を削除するよう に指定します。システム定義ログキーを削除しても、レコードからシステ ムデータは削除されません。これ以降も MicroKernel では、新しく挿入し たレコードに重複のないシステム定義ログキー値を割当てます。ただし、 ユーザ定義の重複のないキーが存在しない場合、MicroKernel ではシステム 定義ログキーを削除したファイルに対するロギングを実行できなくなりま す。このため、システム定義ログキーが壊れている可能性があり、システ ム定義ログキーを再度追加したい場合のみ、このオプションを使用してく ださい。 SINDEX コマンドを使用すると、それ以前に削除しているシステム定義ロ グキーを再使用することができます。 /O オーナネーム 必要な場合は、ファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次の両方の例で、COURSE.MKD は 3 つのキーを持っています。このファイ ルに含まれる元のキーの番号は、0、1、および 2 です。 次の例の BUTIL -DROP コマンドは、COURSE.MKD ファイルからキー番号 1 を削除し、残った 2 つのキーのキー番号を 0 と 1 に調整します。 butil -drop course.mkd 1 次の例の BUTIL -DROP コマンドはキー番号 1 を削除しますが、残ったキー 番号の調整は行いません。キー番号は 0 と 2 になります。 butil -drop course.mkd 129 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-49 INDEX INDEX コマンドは、既存の MicroKernel ファイルでキーとして指定されてい ないフィールドに基づいて、外部インデックスファイルを構築します。 INDEX コマンドを使用する前に、ディスクリプションファイルを作成して、 新しいキー属性を指定しておく必要があります。ディスクリプションファイ ルの詳細については、付録 B「ディスクリプション ファイル」を参照して ください。 新しいファイルのレコードは、次のものから構成されます。 u 既存のデータファイルに含まれる各レコードの 4 バイトアドレス。 u ソートの基準として使用する新しいキー値。 注意 ディスクリプションファイルで指定するキー長が 10 バイトである場合、外部イン デックスファイルのレコード長は 14 バイト(指定した 10 バイト + 4 バイトアドレ ス)になります。 フォーマット BUTIL -INDEX < ソースファイル > < インデックスファイル > < ディスクリプションファイル >[/O< オーナネーム |*>] [/S] ソースファイル 外部インデックスを構築する既存のファイルのフルパス名。WindowsNT/9x または OS/2 に対応した BUTIL を実行するときは、データファイルがカレ ントディレクトリにあればパス名を指定する必要はありません。 インデックスファイル 外部インデックスを格納するインデックスファイルのフルパス名。 ディスクリプション ファイル あらかじめ作成してある、新しいキー定義を含むディスクリプションファ イルのフルパス名。このディスクリプションファイルには、新しいキーの セグメントに対する定義が含まれていなければなりません。 /O オーナネーム 必要な場合は、データファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 説明 INDEX コマンドは、外部インデックスファイルを作成し、インデックス付 きレコードの数を表示します。この外部インデックスファイルを使ってデー タファイルのレコードを出力するには、SAVE コマンドを使用します。 7-50 Pervasive.SQL User’s Guide INDEX コマンドに使用するディスクリプションファイルの例 次に示すディスクリプションファイルは、1 つのセグメントを含む新しい キーを定義します。このキーは、レコードのバイト 30 で始まり、10 バイト の長さです。このキーは、重複可能かつ変更可能である STRING 型のキー で、オルタネートコレーティングシーケンスを使用しません。 図 7-22 INDEX コマンドに使用するディスクリプションファイルの例 使用例 次のコマンドは、COURSE.MKD というデータファイルを対象に NEWCRS.IDX という外部インデックスファイルを作成します。 COURSE.MKD ファイルはオーナネームを必要としません。新しいキーに対 する定義を含むディスクリプションファイルは NEWCRS.DES という名前で す。 butil -index course.mkd newcrs.idx newcrs.des SETOWNER SETOWNER コマンドは、MicroKernel ファイルにオーナネームを設定しま す。 フォーマット BUTIL -SETOWNER < ソースファイル > </O< オーナネーム |*>> < レベル > [/S] ソースファイル 対象となるデータファイルのフルパス名。Windows NT/9x または OS/2 に対 応した BUTIL を実行するときは、データファイルがカレントディレクトリ にあればパス名を指定する必要はありません。 /O オーナネーム 設定するオーナネーム。 レベル データファイルに対するアクセス制限のタイプ。このパラメータには、次 のいずれかを指定できます。 0 いずれのアクセスモードでもオーナネームが必要になります(データ の暗号化なし) 。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-51 /S(NetWare のみ) 1 オーナネームを指定しなくてもリードオンリーアクセスは許可されま す(データの暗号化なし) 。 2 いずれのアクセスモードでもオーナネームが必要になります(データ の暗号化あり) 。 3 オーナネームを指定しなくてもリードオンリーアクセスは許可されま す(データの暗号化あり) 。 デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次の例は、COURSE.MKD ファイルのオーナネームを作成します。オーナ ネームは Sandy で、制限レベルは 1 です。 butil -setowner course.mkd /oSandy 1 SINDEX SINDEX コマンドは、既存の MicroKernel ファイルで使用する追加インデッ クスを作成します。デフォルトの設定で、新しいインデックスのキー番号 は、対象となるデータファイルでそれまで最大だったキー番号よりも 1 つ大 きな番号になりますが、特定のキー番号を使用するように MicroKernel に命 令することもできます。例外は、それ以前に DROP コマンドを実行してイ ンデックスを削除し、残ったキー番号の調整をせず、未使用のキー番号が残 されている場合です。この場合、新しいインデックスは未使用になっている 最小の番号を持つことになります。 キー番号のオプションを使って、新しいインデックスに特定のキー番号を指 定するように MicroKernel に命令することもできます。指定するキー番号 は、ファイル内でまだ使用されていない有効なキー番号でなければなりませ ん。無効なキー番号を指定すると、ステータスコード 6 が返されます。 このコマンドで SYSKEY オプションを使用しない場合は、SINDEX コマン ドを使用する前に、インデックスに対するキースペックを定義するディスク リプションファイルを作成しておく必要があります。ディスクリプション ファイルの詳細については、付録 B「ディスクリプション ファイル」を参 照してください。 7-52 Pervasive.SQL User’s Guide フォーマット BUTIL -SINDEX < ソースファイル > < ディスクリプション ファイル | SYSKEY>[ キー番号 ] [/O< オーナネーム |*>] [/S] ソースファイル インデックスを作成するデータファイルのフルパス名。Windows NT/9x ま たは OS/2 に対応した BUTIL を実行するときは、データファイルがカレン トディレクトリにあればパス名を指定する必要はありません。 ディスクリプション ファイル 作成するインデックスの記述を含むディスクリプションファイルのフルパ ス名。 SYSKEY システムキーが削除されているファイルに再度システムキーを追加するよ うにユーティリティに命令します。 /O オーナネーム 必要な場合は、データファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次の例は、COURSE.MKD ファイルに対するインデックスを追加します。 ディスクリプションファイルの名前は NEWIDX.DES です。 butil -sindex course.mkd newidx.des 次の例は、COURSE.MKD ファイルにシステム定義キーを追加します。シス テム定義キーは削除されています。 butil -sindex course.mkd syskey Btrieve データファイルのコンパクト化 BUTIL のいくつかのコマンド(CLONE、RECOVER、および LOAD コマン ド)を使って、データファイルに含まれる未使用スペースを削除し、データ ファイルのサイズを小さくすることができます。 ➤ Btrieve データファイルをコンパクト化するには 1. まずデータファイルの名前を変更します。この後、CLONE コマンドを 使って、元のファイル名を持つ空のデータファイルを作成します。 2. RECOVER コマンドを使って、1. で名前を変更したファイルのデータを シーケンシャルファイルに保存します。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-53 3. LOAD コマンドを使って、回復されたデータを 1. で作成した空のファ イルにロードします。 データを含む各レコードがブランクレコードを含まない新しく作成した データファイルにロードされます。 注意 このオペレーションは、Btrieve 対話型メンテナンスユーティリティで実行すること もできます。 データベースのバックアップ ここでは、BUTIL の STARTBU および ENDBU コマンドを使って、データ ベースのバックアップを行う方法について説明します。 表 7-9 Continuous オペレーションの開始と終了を行うコマンド コマンド 説明 STARTBU バックアップ対象として定義されているデータファイルを対象に Continuous オペレーションを開始します。 ENDBU バックアップ対象として定義されているデータファイルを対象に Continuous オペレーションを終了します。 Continuous オペレーション Continuous オぺレーションとは、アプリケーションがファイルを使用してい る間に、そのファイルのバックアップを可能にする MicroKernel の機能のこ とです。Continuous オぺレーションの実行中、MicroKernel は Continuous オ ぺレーションの対象となっている各ファイルに対してテンポラリデータファ イル(デルタファイルと呼ばれます)を作成し、バックアップの実行中に データファイルに加えられた変更を記録します。Continuous オぺレーション の実行中にユーザがファイルに大量の変更を加えると、このテンポラリデル タファイルが元のデータファイルのサイズを超える場合もあります。 注意 テンポラリデルタファイルは、拡張子が .^^^ である点を除いて元のデータファイルと 同じ名前を持ちます。このため、拡張子だけが異なる同名のファイルは作成しないよ うにしてください。たとえば、データファイルに INVOICE.HDR、INVOICE.DET な どの名前を付けないでください。 Continuous オぺレーションが終了すると、デルタファイルに格納されている 変更内容を使って、マスタデータファイルが更新されます。マスタデータ ファイルの更新が終了すると、対応するデルタファイルは自動的に削除され ます。ファイルに Continuous オぺレーションを適用するには、BUTIL STARTBU コマンドを使用します。また、ファイルに対する Continuous オぺ レーションを終了するには、BUTIL -ENDBU コマンドを使用します。バッ クアップを行うためにデータファイルに Continuous オぺレーションを適用 7-54 Pervasive.SQL User’s Guide する最適なタイミングは、対象となるファイルに変更を加えるユーザ数が最 も少なくなる夜間や休日です。 Continuous オペレーションを実行しても、MicroKernel のパフォーマンスが 明らかに低下することはありません。ただし、ファイルをバックアップする サーバを使用していると、パフォーマンスに影響が出る場合があります。 MicroKernel のアーカイブロギング機能を使用していない場合は、次の操作 を行います。次の操作により、MicroKernel の Continuous オペレーションを 利用でき、アプリケーションがデータファイルを使用している間でもその ファイルのバックアップを行うことができます。ただし、システム障害が発 生した場合、BUTIL -ROLLFWD コマンドを使って、前回のバックアップ以 降に加えられた変更を回復することはできません。 ➤ Continuous オペレーションを使ってデータを保護するには 1. BUTIL -STARTBU コマンドを使って、ファイルに Continuous オペレー ションを適用します。 2. データファイルをバックアップします。 3. BUTIL -ENDBU コマンドを使って、ファイルに対する Continuous オペ レーションを解除します。 STARTBU STARTBU コマンドは、バックアップ対象としてあらかじめ定義されている データファイルまたはデータファイルのセットに対する Continuous オペ レーションを開始します。このコマンドを実行できるのは、Windows NT ま たは NetWare サーバで、このユーティリティの Win32 または NLM バージョ ンを使用しているときだけです。 ➤ Continuous オペレーションを使ってファイルをバックアップするには 1. 対象となるデータファイルまたはデータファイルのセットを指定して、 STARTBU コマンドを発行します。 2. バックアッププログラムを実行します。 3. ENDBU コマンドを発行し、Continuous オペレーションを終了します。 フォーマット BUTIL -STARTBU < ソースファイル | @ リストファイル > [/S] ソースファイル バックアップを行うために Continuous オペレーションを開始するデータ ファイルのフルパス名(Windows NT の場合はドライブ指定を含み、 NetWare の場合はボリューム指定を含みます) 。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-55 Continuous オペレーションを開始するデータファイルのフルパス名のリス トを含んだテキストファイルの名前。これらのファイル名はキャリッジリ ターン / ラインフィードで区切る必要があります(ユーティリティでは、 ブランクスペースの区切り文字も正しく認識されますが、Pervasive.SQL の 将来のバージョンではファイル名に含まれるブランク文字を認識できるよ うになる予定です。このため、Pervasive.SQL の将来のバージョンとの互換 性を維持するため、区切り文字にはキャリッジリターン / ラインフィード を使用してください) 。ファイル名の先頭にはアットマーク(@)を入力す る必要があります。 リストファイル 指定されたすべてのファイルを対象に Continuous オペレーションを開始で きない場合、一部のファイルだけが Continuous オペレーションモードにな ることはありません。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 注意 このコマンドは、明示的に指定されたファイルだけを対象に Continuous オペレー ションを開始します。STARTBU コマンドでワイルドカード文字を使用することはで きません。 Windows NT サーバでの使用例 次の例は、COURSE.MKD ファイルを対象に Continuous オペレーションを開 始します。 butil -startbu f:¥demodata¥course.mkd 次の例は、STARTLST.FIL ファイルで指定されているすべてのファイルを対 象に Continuous オペレーションを開始します。 butil -startbu @startlst.fil ここで、STARTLST.FIL ファイルには、次のエントリが含まれているとしま す。 f:¥demodata¥course.mkd f:¥demodata¥tuition.mkd f:¥demodata¥dept.mkd 7-56 Pervasive.SQL User’s Guide NetWare サーバでの使用例 次の例は、COURSE.MKD ファイルを対象に Continuous オペレーションを開 始します。 butil -startbu sys:¥demodata¥course.mkd 次の例は、STARTLST.FIL ファイルで指定されているすべてのファイルを対 象に Continuous オペレーションを開始します。 butil -startbu @sys:¥test¥startlst.fil ここで、STARTLST.FIL ファイルには、次のエントリが含まれているとしま す。 sys:¥demodata¥course.mkd sys:¥demodata¥tuition.mkd sys:¥demodata¥dept.mkd ENDBU ENDBU コマンドは、バックアップ対象としてあらかじめ定義されている データファイルまたはデータファイルのセットに対する Continuous オペ レーションを終了します。このコマンドは、STARTBU コマンドを使って Continuous オペレーションを開始し、バックアップを完了した後で実行して ください。 このコマンドは、Win32 および NLM バージョンのメンテナンス ユーティリ ティを使用する Pervasive.SQL サーバ エンジンか、または Windows 9x およ び Windows NT プラットフォームのワークステーション エンジン上で実行す ることができます。 フォーマット BUTIL -ENDBU </A | ソースファイル | @ リストファイル > [/S] /A ソースファイル /A を指定すると、BUTIL -STARTBU で初期化され、現在、Continuous オペ レーションモードにあるすべてのファイルを対象に Continuous オペレー ションを終了します。 Continuous オペレーションを終了するデータファイルのフルパス名 (Windows NT の場合はドライブ指定を含み、NetWare の場合はボリューム 指定を含みます) 。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-57 リストファイル Continuous オペレーションを終了するデータファイルのリストを含んだテ キストファイルの名前。このテキストファイルには、各データファイルの フルパス名が含まれていて、それぞれのファイル名がキャリッジリターン / ラインフィードで区切られている必要があります(現在のユーティリティ では、ブランクスペースの区切り文字も正しく認識されますが、 Pervasive.SQL の将来のバージョンではファイル名に含まれるブランク文字 を認識できるようになる予定です。このため、Pervasive.SQL の将来のバー ジョンとの互換性を維持するため、区切り文字にはキャリッジリターン / ラインフィードを使用してください) 。ファイル名の先頭にはアットマーク (@)を入力する必要があります。 通常、ここで指定するデータファイルのリストは、STARTBU コマンドで 使用したリストと同じものになります。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 Windows NT サーバでの使用例 次のコマンドは、COURSE.MKD ファイルを対象とする Continuous オペレー ションを終了します。 butil -endbu f:¥demodata¥course.mkd ただし、カレントディレクトリが f:¥demodata の場合は、フルパス名を指定 する代わりに単に butil -endbu course.mkd と入力するだけで十分です。 NetWare サーバでの使用例 次のコマンドは、COURSE.MKD ファイルを対象とする Continuous オペレー ションを終了します。 butil -endbu sys:¥demodata¥course.mkd システム障害後のデータの回復 ここでは、ROLLFWD コマンドを使って、最後のバックアップからシステ ム障害が発生するまでの間にデータファイルに加えられた変更を回復する方 法について説明します。 アーカイブ ロギング MicroKernel を環境設定し、アーカイブロギングを実行することができます。 アーカイブロギングにより、ファイルのバックアップ操作が容易になりま 7-58 Pervasive.SQL User’s Guide す。システム障害が発生した場合、アーカイブログファイルと BUTIL ROLLFWD コマンド、または対話型のメンテナンスユーティリティのロー ルフォワード機能を使って、最後のバックアップからシステム障害までの間 にファイルに加えられた変更を回復することができます。アーカイブロギン グをオンにするには、セットアップユーティリティの[アーカイブロギング の実行]オプションを使用します。 アーカイブロギングの対象となるファイルを作成するには、そのファイルを 含むボリューム上に作成するアーカイブログ環境設定ファイルにエントリを 追加します。この環境設定ファイルをセットアップするには、次の操作を行 います。 1. ロギングの対象となるデータファイルを含む物理ドライブの実際のルー トディレクトリに ¥BLOG ディレクトリを作成します (マップされたルートディレクトリは使用しないでください)。対象とな るファイルが複数のボリュームに分散している場合は、それぞれのボ リュームに ¥BLOG ディレクトリを作成します。 2. 各 ¥BLOG ディレクトリに空の BLOG.CFG ファイルを作成します。 BLOG.CFG ファイルを作成するには、任意のテキストエディタを使用 します。 3. 各 BLOG.CFG ファイルの中で、そのドライブに格納されているアーカ イブロギングの対象となるデータファイルに対するエントリを作成しま す。ログファイルのエントリは v6.x フォーマットで指定します。次の フォーマットを使ってエントリを作成します。 ¥path1¥dataFile[=¥path2¥logFile] path1 ロギングの対象となるデータファイルのパス。このパスにはドライブ 名は含まれません。 dataFile ロギングの対象となるデータファイルの名前。 path2 ログファイルのパス。ログファイルとデータファイルは異なるドライ ブに格納されている場合もあるため、このパスにはドライブ名も指定 できます。 logFile ログファイルの名前。 1 つのエントリにはスペースを入力せず、かつ 1 行以内に収まる必要が あります(各行は最大で半角 256 文字です) 。余裕がある場合は、同じ 行に複数のエントリを入力することもできます。それぞれのエントリは 少なくとも 1 つのスペースで区切ります。 ログファイルの名前を指定しないと、ログファイルを最初にオープンす るときに、元のファイル名 + 拡張子 .LOG という名前が自動的に付けら れます。たとえば、元のデータファイルが B.BTR の場合、ログファイ ルの名前は B.LOG になります。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-59 次に、ドライブ C にある BLOG.CFG ファイルに含まれるエントリの例 を示します。次の 3 つのエントリはどれも同じ結果になります。つま り、C:¥DATA¥B.BTI ファイルに加えられた変更は C:¥DATA¥B.LOG ファイルに記録されます。 ¥data¥b.bti ¥data¥b.bti=¥data¥b.log ¥data¥b.bti=¥data¥b.log 次の例は、C:¥DATA¥B.BTI ファイルに加えられた変更をログファイル D:¥DATA¥B.LGF に記録するようにエンジンに指示します。この例は、 アーカイブログファイルがデータファイルと同じドライブに格納されて いる必要はなく、.LOG 拡張子である必要がないことを示しています (拡張子 .LOG はデフォルトの設定です)。 ¥data¥b.bti=d:¥data¥b.lgf ファイルのバックアップ ファイルを定期的にバックアップすることは、貴重なデータを保護する上で 非常に重要な操作です。 MicroKernel のアーカイブログ機能を使用している場合は、次の操作を実行 します。この操作を行うことで、システム障害が発生した場合にも、BUTIL -ROLLFWD コマンドまたは対話型のメンテナンスユーティリティのロール フォワード機能を利用できます。 ➤ アーカイブロギングを使ってデータを保護するには 1. セットアップユーティリティを使って、 [アーカイブロギングの実行] オプションをオンにします。 2. ロギングの対象となるデータファイルを含むボリュームに BLOG.CFG ログ環境設定ファイルを作成します(「アーカイブ ロギング」を参照し てください) 。 3. MicroKernel をシャットダウンします。 4. データファイルをバックアップし、既存のログファイルを削除します。 既存のログファイルを削除することで、アーカイブログファイルがあま りにも大きくなるのを防ぐことができます。それぞれのデータファイル のバックアップが終了するたびに、そのファイルを使った作業を再開す る前に、対応するログファイルを削除します。バックアップデータファ イルと対応するログファイルを同期させることは、オペレーションを正 常に回復するために非常に重要な操作です。 5. MicroKernel を再起動します。 MicroKernel のアーカイブロギング機能を使用していない場合は、次の操作 を行います。次の操作により、MicroKernel の Continuous オペレーションを 利用でき、アプリケーションがデータファイルを使用している間でもその 7-60 Pervasive.SQL User’s Guide ファイルのバックアップを行うことができます。ただし、システム障害が発 生した場合、BUTIL -ROLLFWD コマンドを使って、前回のバックアップ以 降に加えられた変更を回復することはできません。 ROLLFWD ROLLFWD コマンドは、最後のバックアップからシステム障害が発生する までの間にデータファイルに加えられた変更を回復します。MicroKernel は 変更内容をアーカイブログファイルに格納しています。システム障害が発生 した場合は、データファイルのバックアップコピーをリストアし、 ROLLFWD コマンドを使って、ログに格納されているすべての変更内容を バックアップコピーに適用します。 注意 システム障害が発生する前に、MicroKernel の[アーカイブロギングの実行]オプ ションがオンになっていて、ファイルをバックアップしていないと、ROLLFWD コマ ンドを利用することはできません。 システム障害が発生した場合は、バックアップをリストアして、すぐに ROLLFWD コマンドを実行します。ファイルへのアクセスを行う前に、 ROLLFWD コマンドを実行する必要があります。このように操作すること で、データファイルに書き込まれたデータがシステム障害が発生した時点の 状態になることが保証されます。特に、ファイルへの書き込み、ファイルの ロック、またはファイルに対する排他処理を実行する前に、ロールフォワー ドを実行する必要があります。 また、ROLLFWD コマンドを使用すると、ログとして記録されたオペレー ションを含む出力ファイルを生成することもできます。この出力ファイル は、変更内容をロールフォワードする前、またはロールフォワードと同時に 生成できます。 フォーマット BUTIL -ROLLFWD < ソースファイル | ボリューム | ドライブ | @ リストファイル >[ </L[ ダンプファイル ] | /W[ ダンプファイル ]> [/T< データ長 >] [/E< キー長 >][/H] [/V] [/O<ownerList>|< オーナネーム >|*]] [/A] [/S] ソースファイル 変更内容をロールフォワードするデータファイルのフルパス名。 WindowsNT の場合、データファイルがカレントディレクトリにあればパス 名を指定する必要はありません。 ボリューム 変更内容をロールフォワードするボリューム。ボリューム名の最後は、 SYS:¥、//SERVER/SYS/、または ¥¥SERVER¥SYS:¥ のように、円記号(¥) またはスラッシュ(/)で終わる必要があります。 ドライブ 変更内容をロールフォワードするドライブ。ドライブ名の最後は、F:¥、F:/ のように、円記号(¥)またはスラッシュ(/)で終わる必要があります。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-61 リストファイル ロールフォワードの対象となるファイル、ボリューム、またはドライブの パスを含むテキストファイルのフルパス名。これらのパスはキャリッジリ ターン / ラインフィードで区切ります。エラーが発生すると、現在処理中 のファイルのロールフォワードは中止されますが、それ以前に回復した変 更内容はロールバックされません。/A オプションを指定していると、次の ファイルのロールフォワードが継続されます。ファイル名の先頭にはアッ トマーク(@)を入力する必要があります。 /L 出力ファイルは生成しますが、ロールフォワードは行いません /W ロールフォワードと出力ファイルの生成を同時に行います。 ダンプファイル メンテナンスユーティリティがログに記録されているオペレーションのリ ストを書き込む出力ファイルのファイル名。デフォルトの設定は、 ¥BLOG¥BROLL.LST です。ファイル名にドライブ名またはボリューム名を 指定することはできません。また、ファイル名の先頭はスラッシュ(/)ま たは円記号(¥)で始める必要があります。出力ファイルは、BLOG.CFG ファイルと同じボリュームに書き込まれます。 /T データ長 出力ファイルに書き込むオペレーションのデータバッファの長さを指定し ます。このオプションを指定しないと、データバッファの内容は出力ファ イルに書き込まれません。 /E キー長 出力ファイルに書き込むオペレーションのキーバッファの長さを指定しま す。このオプションを指定しないと、キーバッファの内容は出力ファイル に書き込まれません。 /H 出力ファイルに含まれる数値を 16 進表記するようにユーティリティに命令 します。このオプションを指定しないと、出力ファイルに含まれる数値は ASCII フォーマットで表記されます。このオプションは、エントリ数、オ ペレーションコード、キー番号、およびデータ長フィールドのフォーマッ トに影響を与えます。 /V 出力ファイルに追加情報(ユーザ名、ネットワークアドレス、およびタイ ムスタンプ)を書き込むようにユーティリティに命令します。 /O 必要な場合は、データファイルのオーナネームを指定します。ログに記録 されているオペレーションの出力を指定し、データファイルのバックアッ プコピーがリードオンリーアクセスを許可するためのオーナネームを持つ 場合にオーナネームが必要になります。詳細については、「オーナネーム」 を参照してください。 /A 複数のファイルをロールフォワードした後でエラーが発生した場合に、次 のファイルのロールフォワードを継続するかどうかを指定します。 このオプションを指定していないと、エラーが発生した時点でロールフォ ワードは中止されます(ただし、それまでに回復した変更内容はロール バックされません) 。 注意: /A オプションを使用するときは、 「エラー メッセージのリダイレク ト」と「コマンド ファイル」で説明したように、ファイルへの出力 をリダイレクトすることをお勧めします。 7-62 Pervasive.SQL User’s Guide /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 注意 キーバッファまたはデータバッファが特定の Btrieve オペレーションの入力パラメー タでない場合は、ダンプファイルには何も書き込まれません。 使用例 次の例は、CLASS.MKD ファイルに加えられた変更を回復します。 butil -rollfwd sys:pvsw¥demodata¥class.mkd 次の例は、次のオプションを使って、sys: ボリューム上にあるすべてのファ イルに加えられた変更を回復し、出力ファイルを生成します。 u デフォルトの出力ファイルを使用する。 u 書き込むデータバッファの長さを 32 バイトに設定する。 u 書き込みキーバッファの長さを 4 バイトに設定する。 u 数値を 16 進表記で書き込む。 butil -rollfwd sys:¥ /W /H /T32 /E4 次の例は、ロールフォワードを実行することなく、次のダンプオプションを 使って、files.txt に指定されているファイルに加えられた変更を出力ファイ ルに書き込みます。 u 出力ファイルとして sys:¥temp¥files.lst を使用する。 u 追加情報を書き込む。 u データファイルが own123 および own321 というオーナネームを持ってい る。 u データまたはキーバッファを出力しない。 butil -rollfwd @sys:¥temp¥files.txt /L¥temp¥files.lst /V /Oown123,own321 データファイル情報の表示 ここでは、STAT コマンドを使って、データファイルの属性とファイルの内 容に関する情報を含むレポートを生成する方法について説明します。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-63 STAT STAT コマンドは、データファイルで定義されている属性とファイルの内容 に関する情報を含むレポートを表示します。STAT コマンドを使用すると、 ファイルが MicroKernel のトランザクション一貫性保守機能によってロギン グ可能であるかどうかを判断するときに役立ちます。STAT コマンドは、イ ンデックスをレポートするときに、それらが Create Supplemental Index オペ レーション(Btrieve v6.0 以降)または Create オペレーションのどちらで作 成されたかもレポートします。 フォーマット BUTIL -STAT < ソースファイル > [/O< オーナネーム |*>] [/S] ソースファイル 情報をレポートするデータファイルのフルパス名。Windows NT の場合、 データファイルがカレントディレクトリと同じディレクトリにあればパス 名を指定する必要はありません。 /O オーナネーム 必要な場合は、データファイルのオーナネーム。 /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 使用例 次の例は、PATIENTS.DTA ファイルの情報をレポートします。データファイ ルにオーナネームはありません。 butil -stat patients.dta ただし、NetWare の場合は、次のようにフルパス名を指定する必要がありま す。 butil -stat sys:¥demodata¥patients.dta. 7-64 Pervasive.SQL User’s Guide 次に、結果として生成されるレポートの例を示します。 File Statistics for PATIENTS.DTA File Version = 7.00 Page Size = 2048 Page Preallocation = No Key Only = No Extended = No Total Number of Records = 16 Record Length = 104 Data Compression = No Variable Records = No Available Linked Duplicate Keys = 0 Balanced Key = No Log Key = 1 System Data = No Total Number of Keys = 3 Total Number of Segments = 4 Key 0 0 1 2 Segment Position Length 1 21 20 2 7 12 1 1 6 1 83 10 Type Flags String MD String MD String M String MD Null ----- Values* Unique 16 0 16 0 16 0 7 0 ACS Values Alternate Collating Sequence(ACS) List: 0 UPPER Legend: < = Descending Order D = Duplicates Allowed I = Case Insensitive M = Modifiable R = Repeat Duplicate A = Any Segment (Manual) L = All Segments (Null) * = The values in this column are hexadecimal. ?? = Unknown -- = Not Specified この例は、PATIENTS.DTA というファイルが v7.0 ファイルであることを示 しています(バージョン番号は、ファイルフォーマットを読み込むことので きる最も古い Btrieve のバージョンを示します)。このファイルのページサイ ズは 2,048 バイトで、プリアロケートされたページはありません。このファ イルはキーオンリーファイルではなく、また拡張ファイルでもありません。 メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-65 16 個のレコードがファイルに挿入されています。このファイルでは、レ コード長が 104 バイトに定義されていて、データ圧縮は使用されず、可変長 レコードの使用も許可されていません。 このファイルではリンク重複キーは使用できません。また、インデックスバ ランスは使用されていません。MicroKernel はキー 1 を使ってロギングを実 行し、ファイルにはシステム定義データは含まれていません。ファイルに は、4 つのキーセグメントから構成される 3 つのキーを持ちます。 注意 SINDEX コマンドで作成したインデックスは、[リンク可能キー]オプションを指定 していないかぎり、デフォルトの設定で R という文字で示されます。 また、STAT レポートは特定のキーに関する情報も提供します。たとえば、 このレポートには、キー 0 が重複値を許可し、変更可能で、2 つのセグメン トから構成されることを示しています。 u 第 1 のセグメントは、ポジション 21 から始まり、半角 20 文字の長さで、 重複値を許可し、変更可能で、STRING 型としてソートされます。ダッ シュはヌル値が定義されていないことを示します。Unique Values 列は、 このセグメントに 16 個の重複のない値が挿入されていることを示して います。このセグメントでは、UPPER.ALT というオルタネートコレー ティングシーケンスファイルが使用されます。 u 第 2 のセグメントは、 ポジション 7 から始まり、半角 12 文字の長さで、重 複値を許可し、変更可能で、STRING 型としてソートされます。このセ グメントには 16 個の重複のない値が挿入されています。このセグメン トでは、UPPER.ALT というオルタネートコレーティングシーケンス ファイルが使用されます。 キー 1 は、MicroKernel がこのファイルのロギングに使用するキーです。 キー 1 は 1 つのセグメントから構成されます。ポジション 1 から始まり、半 角 6 文字の長さで、重複値を許可せず、変更可能で、STRING 型としてソー トされます。このキーには、16 個の重複のない値が挿入されています。こ のセグメントでは、UPPER.ALT というオルタネートコレーティングシーケ ンスファイルが使用されます。 キー 2 は 1 つのセグメントから構成されます。ポジション 83 から始まり、 半角 10 文字の長さで、重複値を許可し、変更可能で、STRING 型として ソートされます。このキーには、7 個の重複のない値が挿入されています。 このセグメントでは、UPPER.ALT というオルタネートコレーティングシー ケンスファイルが使用されます。 7-66 Pervasive.SQL User’s Guide Btrieve インタフェースモジュールのバージョン表示 ここでは、VER コマンドを使って、Btrieve インタフェースモジュールの バージョンを表示する方法について説明します。 VER VER コマンドは、MicroKernel と Btrieve アクセスモジュールのバージョン 番号を返します。 フォーマット BUTIL -VER [/S] /S(NetWare のみ) デフォルトの設定で、メンテナンスユーティリティは出力が画面いっぱい になるたびに実行を一時停止し、適切なキー入力を行うまで待機します。 /S オプションを指定すると、出力画面が自動的にスクロールされ、コマン ドの実行が継続されます。コマンドファイルを指定する場合、コマンドラ インで /S オプションを使用することはできませんが、コマンドファイル内 のコマンドに /S オプションを指定することは可能です。 説明 VER コマンドを実行すると、次のようなメッセージが表示されます (Windows NT の場合)。 BUTIL-33: Btrieve リクエスタのバージョンは 7.00 です。 BUTIL-35: Btrieve のバージョンは 7.00 で Windows NT 版です。 Btrieve エンジンおよびリクエスタのアンロード(DOS のみ) エンジンおよびリクエスタのアンロード( STOP STOP コマンドを使用すると、Btrieve エンジンと、可能な場合は Btrieve リ クエスタをアンロードすることができます。 フォーマット butil -stop メンテナンス ユーティリティを使った Btrieve データ ファイルの操作 7-67 7-68 Pervasive.SQL User’s Guide 第8章 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 Scalable SQL メンテナンス ユーティリティは、次のような一般的なファイル およびデータ操作を実行します。 u 8-2 ページの「Scalable SQL メンテナンス ユーティリティの概要」 u 8-9 ページの「データのインポートとエクスポート」 u 8-18 ページの「データベースのバックアップ」 u 8-20 ページの「システム障害後のデータの回復」 u 8-23 ページの「Scalable SQL インタフェースモジュールのバージョン表 示」 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-1 Scalable SQL メンテナンス ユーティリティの概要 Scalable SQL メンテナンス ユーティリティは、サーバ上で実行されるコマン ドライン ユーティリティです(NetWare の場合は NLM として、また Windows NT の場合は DOS コマンド プロンプトから) 。メンテナンス ユー ティリティはコマンド ラインから直接実行するか、作成したコマンド ファ イル経由で実行することができます。Scalable SQL メンテナンス ユーティリ ティでコマンドを実行する前に、 「Scalable SQL メンテナンス ユーティリ ティ」で説明されているいくつかの基本的な考え方と操作方法を理解してお く必要があります。ここでは、以下の項目について説明します。 u 8-3 ページの「コマンド」 u 8-4 ページの「コマンド フォーマット」 u 8-5 ページの「コマンド オプション」 u 8-7 ページの「Scalable SQL メンテナンス ユーティリティ の基本的な考 え方」 u 8-8 ページの「コマンド ファイル」 8-2 Pervasive.SQL User’s Guide コマンド 表 8-1 Scalable SQL メンテナンス ユーティリティのコマンド コマンド 説明 プラットフォーム BLOAD シーケンシャル ファイルから SQL データ ファイ ルにバルク モードでレコードを挿入します。 NT、NetWare COPY SQL ステートメントを使って入力と出力を指定 し、あるデータ ファイルから別のデータ ファイ ルに選択したデータをコピーします。 NetWare のみ ENDBU バックアップのために定義されている名前付き データベースに対する Continuous オペレーショ ンを終了します。 NT、NetWare LOAD SQL ステートメントを使って入力を指定し、 シーケンシャル ファイルからデータ ファイルに データをロードして更新します。 NetWare のみ ROLLFWD 最後のバックアップからシステム障害の発生まで の間にデータベース内のデータ ファイルに加え られた変更を回復します。 NT、NetWare SAVE SQL ステートメントを使ってエクスポートを指 定し、データ ファイルに含まれる選択したデー タをシーケンシャル ファイルに保存します。 NetWare のみ STARTBU バックアップのために定義されている名前付き データベースに対する Continuous オペレーショ ンを開始します。 NT、NetWare VER 拡張バージョン情報を含めて、サーバにロードさ れている Scalable SQL インタフェース モジュー ルのバージョンを表示します。 NetWare のみ 注意 Windows NT ユーザ:インポートおよびエクスポート オペレーションを実行するに は、SQLScope ユーティリティを使用してください。 コマンド構文の表示 各コマンドの使い方の概要を表示するには、ファイル サーバで次のコマン ドを実行します。 sqlutil 次のようなメンテナンス ユーティリティのコマンド画面が表示されます。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-3 NetWare sqlutil -bload < テーブル名 > < 入力ファイル > <{UNF | SDF | ASC}> [/o:< オーナネーム > | <*> ] [ オプション ] sqlutil @ コマンドファイル [ コマンド出力ファイル ] sqlutil -copy <SQL 入力ファイル > <SQL 出力ファイル > [/o:< オーナネームリスト > | < オーナネーム > | <*> ] [ オプション ] sqlutil -endbu < データベース名 | @ リストファイル > [/s] sqlutil -load <SQL ファイル > < 入力ファイル > <{UNF | SDF | ASC}> [/o:< オーナネームリスト > | < オーナネーム > | <*> ] [ オプション ] sqlutil -rollfwd < データベース名 | @ リストファイル > [</l:[ ダンプファイル ] | /w:[ ダンプファイル ]> [/t:< データ長 >] [/e:< キー長 >] [/h] [/v]] [/o:< オーナネームリスト > | < オーナネーム > | <*>] [/a] [/s] sqlutil -save <SQL ファイル > < 出力ファイル > <{UNF | SDF | ASC}> [/o:< オーナネームリスト > | < オーナネーム > | <*> ] [ オプション ] sqlutil -startbu < データベース名 | @ リストファイル > [/s] sqlutil -ver [/s] Windows NT sqlutil -bload < テーブル名 > < 入力ファイル > <{UNF | SDF | ASC}> [/o:< オーナネーム > | <*> ] [ オプション ] sqlutil @ コマンドファイル [ コマンド出力ファイル ] sqlutil -endbu < データベース名 | @ リストファイル > [/s] sqlutil -rollfwd < データベース名 | @ リストファイル > [</l:[ ダンプファイル ] | /w:[ ダンプファイル ]> [/t:< データ長 >] [/e:< キー長 >] [/h] [/v]] [/o:< オーナネームリスト > | < オーナネーム > | <*>] [/a] [/s] sqlutil -startbu < データベース名 | @ リストファイル > [/s] コマンド フォーマット 次に Scalable SQL メンテナンス ユーティリティのコマンド ラインのフォー マットを示します。 SQLUTIL [ < - コマンド [ パラメータ ... ] | @ コマンドファイル > [ option ... ] ] option ::= < /B: 特殊ブランク文字 | /C: | /D:< 辞書パス | データベース名 > | /F: データファイルパス | /O:< オーナネームリスト | オーナネーム | *> | /P:< ユーザパスワード | * > | /R: レコード数 | /S: | /U:< ユーザ名 | * > | /X: > 8-4 Pervasive.SQL User’s Guide コマンド COPY などの Scalable SQL メンテナンス ユーティリティのコマンド。コマ ンドの先頭には、ダッシュ(-)を付ける必要があります。また、ダッシュ の前にはスペースを入力してください。コマンドの一覧については、8-3 ページの表 8-1 を参照してください。 パラメータ コマンドに必要な情報 コマンドファイル コマンド ファイルのパス名 コマンド オプションの詳細については、次のセクションを参照してくださ い。 コマンド オプション オプションを指定するには大文字と小文字のどちらを使ってもかまいませ ん。次にオプションの一覧を示します。 /B: v3.01 互換モードだけで使用できます。このオプションは、ユーティリティ で使用するブランク置換文字を指定します。たとえば、ブランク置換文字 としてチルダ(~)を使用するには、次のように指定します。 /B:~ /C: Scalable SQL メンテナンス ユーティリティに v3.01 互換モードでの実行を 指示します。デフォルトの設定で、メンテナンス ユーティリティは、v4.0 互換モードで実行されます。 このオプションは、コマンド ファイル名の入力には使用できませんが、コ マンド ファイル内のコマンドに対しては有効なオプションとして使用でき ます。 /D: データベース名、または辞書ファイルが格納されているディレクトリのい ずれかを指定します。たとえば、名前付きの大学データベースを指定する には、/D:@BTU と入力します。辞書のロケーションを使用する場合は、 /D:G:¥SSQL¥DEMODATA または /D:SYS:¥SSQL¥DEMODATA などのパス を指定します。このユーティリティの NLM バージョンでは、/D: オプショ ンを使用する必要があります。名前付きデータベースを指定する場合は、/ F: オプションを使ってデータ ファイルのロケーションを指定する必要はあ りません。 /F: 必要な場合に、データ ファイルが格納されているディレクトリを指定しま す。/D: オプションを使って辞書のロケーションを明示的に指定し、しかも データ ファイルのロケーションが辞書の中で完全に定義されていない場合 だけ、このパラメータを使用します。たとえば、データ ファイルのロケー ションが辞書の中で FACULTY.MKD とだけ指定されていて、このファイ ルがドライブ G の SSQL ディレクトリに保存されている場合は、 /F:G:¥SSQL と指定します。/F: オプションを指定せず、また /D: オプション でデータベースも指定していない場合、このユーティリティは辞書に格納 されているロケーションでデータ ファイルをオープンしようとします。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-5 /O: 必要な場合に、データ ファイルのオーナ ネームを指定します。また、カン マで区切った最大 8 つまでのオーナ ネームのリストを指定することもでき ます。詳細については、 「オーナ ネーム」を参照してください。 /P: 必要な場合に、/U: オプションで名前を付けたユーザのパスワードを指定し ます。パスワードは格納されている通りに正確に入力します。ユーティリ ティにパスワードを要求するプロンプトを表示させる場合は、パスワード の代わりにアスタリスク(*)を指定します。 /R: 必ず BLOAD コマンドと組み合わせて使用します。1 度にロードするレ コードの数を指定します。たとえば、1 度に 50 レコードをロードするに は、/R:50 と指定します。デフォルトのレコード数は 100 です。一般に、 1 度にロードするレコード数を多くするとパフォーマンスが向上します。 ただし、1 度にロードするレコードのブロックが 64KB を超えるメモリを 使用することはできません。 /S デフォルトの設定で、Scalable SQL メンテナンス ユーティリティは出力が 画面いっぱいになるたびに実行を一時停止し、適切なキー入力を行うまで 待機します。/S オプションを指定すると、出力画面が自動的にスクロール され、コマンドの実行が継続されます。コマンド ファイルを指定する場 合、コマンド ラインで /S オプションを使用することはできませんが、コマ ンド ファイル内のコマンドに /S オプションを指定することは可能です。 /U: 必要な場合に、アクセスする辞書に対するユーザ名を指定します。このオ プションには、/U:Charles のように有効なユーザ名を指定してください。 ユーティリティにユーザ名を要求するプロンプトを表示させる場合は、 ユーザ名の代わりにアスタリスク(*)を指定します。 /X: 処理済みのレコードの総数だけを印刷します(–COPY、–LOAD、および –SAVE コマンドで) 。Scalable SQL メンテナンス ユーティリティからの出 力がリダイレクトされるとき、個別のオペレーション(挿入など)の検証 もリダイレクトされます。 8-6 Pervasive.SQL User’s Guide Scalable SQL メンテナンス ユーティリティ の基本的な考え方 ここでは、Scalable SQL メンテナンス ユーティリティのコマンドを使用する 前に理解しておくべき基本的な考え方について説明します。 ファイル名 ファイル パスを必要とするコマンドでは、ボリューム名とディレクトリ パ スを指定します。次に構文を示します。 NetWare 形式 volume:¥directoryPath¥file name Windows NT 形式 drive:¥directoryPath¥file name オーナ ネーム MicroKernel では、オーナ ネームを指定してファイルへのアクセスを制限す ることができます。オーナ ネームはオプションであるため、このユーティ リティで使用するファイルはオーナ ネームを必要とする場合もあれば、そ うでない場合もあります。ファイルがオーナ ネームを必要とする場合は、 /O オプションを使ってオーナ ネームを指定します。/O オプションの後に は、次のいずれかを指定することができます。 u 1 つのオーナ ネーム u 最大 8 つまでのオーナ ネームのリスト。 それぞれのオーナ ネームはカン マで区切ります。ROLLFWD コマンドで使用する場合を除き、オーナ ネームがアルファベット以外の文字で始まるときは、オーナ ネームの 前後をシングル クォーテーション マーク(’)で区切ります。 u アスタリスク(*) オーナ ネームでは大文字と小文字が区別されます。このため、Sandy と SANDY は同じであるとは見なされません。コマンド ラインにオーナ ネー ムを入力すると、先頭のブランクが削除されます。アスタリスクを指定した 場合は、オーナ ネームの入力を要求するプロンプトが表示され、先頭のブ ランクが削除されることはありません。 エラー メッセージのリダイレクト エラー メッセージをファイルにリダイレクトするには、次のいずれかのコ マンド フォーマットを使用します。 NetWare の場合は次のコマンドを実行します。 sqlutil -command commandParameters (CLIB_OPT)/> filePath Windows NT の場合は、次のコマンドを実行します。 sqlutil -command commandParameters > filePath エラー メッセージをリダイレクトするときは必ずフル パスを指定してくだ さい。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-7 コマンド ファイル コマンド ファイルを使用すると、次の操作を行うことができます。 u 長すぎてコマンド ラインに入りきらないコマンドを実行する。 u 頻繁に使用するコマンドを実行する(コマンド ファイルに目的のコマ ンドを 1 度書き込んでしまえば、それ以降は必要に応じて何度でもその コマンド ファイルを実行できます) 。 u 次のコマンド フォーマットを使って、コマンドを実行した後、出力を ファイルに書き込む。 SQLUTIL @ コマンド ファイル [ コマンド出力ファイル ] 出力ファイルには、実行したそれぞれのコマンドについて、コマンド名 とその結果が書き込まれます。画面にも同じメッセージが表示されま す。 コマンド ファイルには、コマンド ラインで必要な情報と同じものを入力し ます。 コマンド ファイルの規則 Scalable SQL メンテナンス ユーティリティのコマンド ファイルを作成する ときは、次の規則に従ってください。 u 各行には半角 130 文字まで入力できます。 u コマンド ファイルのサイズが 1,000 バイトを超えることはできません。 u 1 つのパラメータを 2 行以上に分割することはできません。 u 1 つのコマンド ファイルに書き込めるコマンドは 1 つだけです。 1 つのコ マンド ファイルで複数のコマンドを使用することはできません。 コマンド ファイルの例 次に、LOADSTDT.CMD という名前のサンプル コマンド ファイルを示しま す。このファイルでは、SQLUTIL –LOAD コマンドを呼出して、シーケン シャル ファイル(STUDENTS.ASC)のデータを STUDENTS.SQL ファイル に含まれる SQL ステートメントで指定されたデータ ファイルにロードしま す。 -load vol:¥ssql¥demodata¥students.sql vol:¥ssql¥demodata¥students.asc asc /d:¥ssql¥demodata /f:¥ssql¥demodata 8-8 Pervasive.SQL User’s Guide 次のコマンドは LOADSTDT.CMD ファイルを使って、ファイル サーバ上で このユーティリティを NLM として実行します。ファイル サーバでは、ボ リューム名を含めて、コマンド ファイルのフル パス名を指定する必要があ ります。 sqlutil @sys:¥ssql¥demodata¥loadstdt.cmd データのインポートとエクスポート ここでは、Scalable SQL メンテナンス ユーティリティの BLOAD、COPY、 LOAD、および SAVE コマンドを使って、データのインポートとエクスポー トを行う方法について説明します。 コマンド 説明 プラットフォーム BLOAD シーケンシャル ファイルから SQL データ ファイルに バルク モードでレコードを挿入します。 NT、NetWare COPY SQL ステートメントを使って入力と出力を指定し、あ るデータ ファイルから別のデータ ファイルに選択した データをコピーします。 NetWare のみ LOAD SQL ステートメントを使って入力を指定し、シーケン シャル ファイルからデータ ファイルにデータをロード して更新します。 NetWare のみ SAVE SQL ステートメントを使ってエクスポートを指定し、 データ ファイルに含まれる選択したデータをシーケン シャル ファイルに保存します。 NetWare のみ 注意 Windows NT ユーザ:データのインポートとエクスポートを行うには、SQLScope ユーティリティを使用します。このユーティリティの詳細については、第 9 章、9-25 ページの「データのインポートとエクスポート」を参照してください。 インポートとエクスポートのファイル フォーマット Scalable SQL メンテナンス ユーティリティでは、データのインポートとエク スポートを行うために 3 つの異なるファイルフォーマットがサポートされて います。これらのフォーマットを表 8-2 に示します。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-9 表 8-2 外部データ フォーマット オプ 説明 ション UNF フォーマットされていない形式。データは ASCII フォーマットに変換されません。数値列は バイナリ形式のまま残され、印刷可能な ASCII 文字列に変換されません。各レコードの先頭 には ASCII フォーマットで表されたレコード長とカンマ区切り文字が置かれます。各レコー ドはキャリッジ リターン/ライン フィードによって終端します。 SDF 標準データ形式。データは標準 ASCII 文字で表され、各列はカンマ(,)で区切られます。ま た、すべての列の前後はダブル クォーテーション マーク(“)で囲まれます。各レコードは キャリッジ リターン/ライン フィードによって終端します。これは、アプリケーション間ま たはデータベース間でデータ変換を行うための一般的なフォーマットです。 ASC ASCII 形式。入力ファイルの各レコードの先頭にはレコード長と区切り文字(カンマまたは スペース)を置く必要があります。データは区切り文字の後に続き、その長さは先頭のレ コード長と正確に一致している必要があります。行の各列の長さは列の表示サイズでなけれ ばなりません。各レコードはキャリッジ リターン/ライン フィードによって終端します。 データのインポートとエクスポートに適用される規則 u データをインポートするとき、Scalable SQL メンテナンス ユーティリ ティは代替変数の代わりに SQL ステートメントのキーワードを受け付 けません。まず、代替変数を使ったデータをインポートし、この後で SQLScope を使用してキーワードを含む SQL ステートメントを使った列 を対象に更新を実行することができます。 u 可変長列(NOTE および LVAR データ型)はフォーマットされていない (UNF)形式のみでインポートまたはエクスポートできます。 u Scalable SQL メンテナンス ユーティリティでは、すべての列の前後をダ ブル クォーテーション マーク(“)で囲んだ SDF データをエクスポー トします。これは、SDF データのインポートまたはエクスポートを行 うときに、マスクとしてカンマ(,)を含むデータを処理するために必 要です。 データのインポートの詳細については、 『SQL Language Reference』の 「INSERT ステートメント」の説明を参照してください。 8-10 Pervasive.SQL User’s Guide BLOAD BLOAD コマンドは、Windows NT と NetWare で使用でき、シーケンシャル ファイルから SQL データ ファイルにバルク モードでレコードを挿入しま す。 (このオペレーションでは、まずインデックスが削除され、その後で再 度追加されます。 )このコマンドは別のアプリケーションで作成されたシー ケンシャル ファイルから SQL データ ファイルに大量のデータを転送すると きに便利です。対象となるシーケンシャル ファイルには、テーブルで定義 されているすべての列に対応する入力データが含まれている必要がありま す。すべての列に対応する入力データがない場合は、LOAD コマンドを使用 します。 一部のデータ型は UNF 形式を使った場合にだけインポートできます。詳細 については、8-10 ページの「データのインポートとエクスポートに適用さ れる規則」を参照してください。 BLOAD コマンドを使用するとき、データ ファイルはアクセラレイティド モードでオープンされます。このため、BLOAD コマンドの処理速度は LOAD コマンドよりも高速になりますが、障害が発生した場合にトランザク ション一貫性を保持できなくなる可能性があります。 フォーマット SQLUTIL -BLOAD テーブル名 入力ファイル < UNF | SDF | ASC > [ オプション ... ] テーブル名 レコードを挿入する既存の Scalable SQL テーブルの辞書で定義されて いる名前。 入力ファイル データ ファイルにロードするレコードを含んだシーケンシャル入力 ファイル。このファイルには、指定したテーブルに対応する辞書で定 義されている、すべての列が含まれている必要があります。 < UNF | SDF | ASC > シーケンシャル入力ファイルのデータ フォーマット オプション 任意のユーティリティ オプション 使用例 次のコマンドは、NEWSTDNT.ASC という ASCII ファイルから一度に 10 レ コードをロードし、それらを BTU データベースの Person テーブルに挿入し ます。 sqlutil -bload person newstdnt.asc asc /d:@btu /r:10 COPY COPY コマンドは、NetWare のみで使用でき、1 つのデータ ファイルの内容 を別のデータ ファイルにコピーします。COPY コマンドを使用すると、あ メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-11 る列のデータ型を互換性のある別のデータ型に変更することができます。任 意のデータ型を、文字列型の1つに変換できます。 COPY コマンドを使用すると、元のファイルのデータを含み、元のファイル とは異なる新しい属性を持ったデータ ファイルを作成できます。 ➤ 元のファイルの情報を含む新規データ ファイルを作成するには 1. SQLScope で SQL ステートメントを使用し、目的の辞書定義を含む空の データ ファイルを作成します。 2. COPY コマンドを使って、既存のデータ ファイルの内容を新しく作成 したデータ ファイルにコピーします。 可変長データ型(LVAR 型および NOTE 型)を含むデータをコピーすること はできません。データをまず UNF 形式でエクスポートし、もう一度 UNF 形 式でインポートするか、SQL ステートメントでその列をビューから削除し た後で COPY コマンドを使用する必要があります。 フォーマット SQLUTIL –COPY SQL 入力ファイル SQL 出力ファイル [ オプション ... ] SQL 入力ファイル 有効な SQL SELECT ステートメントを含む ASCII テキスト ファイル。この ステートメントは、選択する列の名前、データを選択する SQL データ ファ イル、および SELECT ステートメントに適用するその他の結合または制約 条件を指定します。 SQL 出力ファイル 代替変数を使った、有効な SQL INSERT または UPDATE ステートメントを 含む ASCII テキストファイル。指定する代替変数の値は、SELECT ステー トメントで指定した列名と一致している必要があります。 オプション 任意のユーティリティ オプション。 使用例 次のコマンドは、指定されている入力および出力 SQL ファイルを使って、 データを BTU 名前付きデータベースにコピーします。 sqlutil -copy getnames.sql putnames.sql /d:@btu この使用例では、Students テーブルに含まれるすべてのレコードの ID と Last Name が Names という既存の別のテーブルにコピーされます。ここで は、SQL ステートメントを含む 2 つのファイルが使用されます。入力ファ イルの GETNAMES.SQL には、次のテキストが含まれています。 select id, last_name from students 出力ファイルの PUTNAMES.SQL には、次のテキストが含まれています。 8-12 Pervasive.SQL User’s Guide insert into names (id, last_name) values (@v1, @v2) 入力ファイルの SELECT ステートメントは、出力ファイルで使用する V1、 V2 という代替変数に対する値を提供します。代替変数の使い方については、 『SQL Language Reference 』を参照してください。 LOAD LOAD コマンドは入力シーケンシャル ファイルから SQL データ ファイルに 行を挿入します。このコマンドは別のプログラムで作成されたシーケンシャ ル ファイルから SQL ファイルにデータを転送するときに役立ちます。 LOAD コマンドは NetWare のみで使用できます。 注意 Windows NT ユーザ:データのインポートとエクスポートを行うには、SQLScope ユーティリティを使用します。このユーティリティの詳細については、第 9 章、9-25 ページの「データのインポートとエクスポート」を参照してください。 LOAD コマンドは次の動作を実行します。 1. ASCII テキスト ファイルから代替変数を含む SQL ステートメントを読 み込み、それを Scalable SQL に渡します。Scalable SQL では、このス テートメントをコンパイルします。 2. 入力ファイルからデータを読み込み、それを Scalable SQL に渡します。 Scalable SQL では代替変数を値に置き換え、SQL ステートメントを実行 します。 入力ファイルからデータがロードされるにつれ、ユーティリティの画面には ロードされたレコードの総数が表示されます。また、入力ファイルからすべ てのレコードが正常にロードされたときにもメッセージが表示されます。 データを NOTE または LVAR 列にロードする場合、入力ファイルは UNF 形 式になっている必要があります。また、UNF データをロードするときは、 SELECT ステートメントを使用する必要があります。 詳細については、 『SQL Language Reference』を参照してください。 LOAD コマンドでは、ファイルをノーマル モードでオープンします。この ため、トランザクション一貫性が保守されます。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-13 フォーマット SQLUTIL –LOAD SQL ファイル 入力ファイル < UNF | SDF | ASC > [ オプション ... ] SQL ファイル 代替変数を使った、有効な INSERT、UPDATE、または DELETE ステート メントを含むテキスト ファイル。SQL ステートメントは、データ ファイ ル、適用可能な列名、および代替変数を指定する必要があります。UNF 形 式のデータの場合は、SELECT ステートメントを使用する必要があり、代 替変数は指定できません。SQL の構文については、 『SQL Language Reference』を参照してください。 入力ファイル SQL データ ファイルにロードするデータを含んだシーケンシャル ファイル <UNF|SDF|ASC> 入力ファイルのデータ フォーマット。シーケンシャル ファイルのフォー マットについては、8-16 ページの「ASCII ファイル フォーマット」を参照 してください。 SDF データ フォーマットについては、8-17 ページの「SDF ファイル フォーマット」を参照してください。 オプション 8-5 ページの「コマンド オプション」で説明されている任意のユーティリ ティ オプション。 使用例 次のコマンドは、BTU 名前付きデータベースの Billing テーブルに行を挿入 します。 sqlutil –load amtowed.sql amtowed.sdf sdf /d:@btu AMTOWED.SQL という SQL ファイルには次のステートメントが含まれてい ます。 insert into billing (student_id, amount_owed) values (@v1, @v2); 入力ファイルの AMTOWED.SDF には、代替変数 V1、V2 と置き換える次の ような値が含まれています。 “116221385”,“$1500.00” 代替変数の使い方については、 『SQL Language Reference』を参照してくださ い。 8-14 Pervasive.SQL User’s Guide SAVE SAVE コマンドは、データベース ファイルからデータを取得して、それを シーケンシャル ファイルに格納します。このコマンドは NetWare だけで実 行できますが、Windows NT を使用している場合も、SQLScope ユーティリ ティを使って、データのインポートとエクスポートを行うことができます。 詳細については、第 9 章、9-25 ページの「データのインポートとエクス ポート」を参照してください。このコマンドを使用すると、有効な SQL SELECT ステートメントを使って、1 つまたは複数のデータベースからデー タを抽出することができます。このデータを編集し、LOAD コマンドを使っ てさらに別のデータベース ファイルに挿入することもできます。 SAVE コマンドでは、ステートメントが取得した各データのセットに対して 1 つの行を生成し、現在のマスクまたはデフォルト マスク(現在のマスクが 存在しない場合)を使ってデータをエクスポートします。出力ファイルの フォーマットはコマンド ライン パラメータを使って指定できます。出力 ファイルにデータが挿入または保存されるにつれ、ユーティリティの画面に は保存された行の総数が表示されます。 注意 Scalable SQL メンテナンス ユーティリティでは、行に含まれるデータを対象に変換を 実行しません。このため、テキスト エディタを使ってバイナリ データを含む出力ファ イルを編集する場合は、一部のテキスト エディタがバイナリ データを変換し、予想で きない結果になることがある点に注意してください。 可変長データ型は UNF 形式を使った場合にだけ保存できます。詳細につい ては、8-10 ページの「データのインポートとエクスポートに適用される規 則」を参照してください。 フォーマット SQLUTIL –SAVE SQL ファイル 出力ファイル < UNF | SDF | ASC > [ オプション ... ] SQL ファイル SQL SELECT ステートメントを含む ASCII テキスト ファイル。この SELECT ステートメントは代替変数を含まない有効な SQL SELECT ステー トメントでなければなりません。 出力ファイル データを保存するファイル。 <UNF|SDF|ASC> データを格納するフォーマット。シーケンシャル ファイルのフォーマット については、8-16 ページの「ASCII ファイル フォーマット」を参照してく ださい。 SDF データ フォーマットについては、8-17 ページの「SDF ファイル フォーマット」を参照してください。 オプション 8-5 ページの「コマンド オプション」で説明されている任意のユーティリ ティ オプション。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-15 使用例 次のコマンドは、BTU 名前付きデータベースからデータを抽出し、その データを SDF データ ファイルに保存します。 sqlutil -save amtowed.sql amtowed.sdf sdf /d:@btu AMTOWED.SQL という SQL ファイルは、次のように CAST 関数を使って、 デフォルトの列形式でデータをエクスポートします。 select cast( student_id as type of student_id), cast( amount_owed as type of amount_owed) from billing 出力ファイルの AMTOWED.SDF には次のような値が含まれるはずです。 “116221385”,“$1500.00” ASCII ファイル フォーマット LOAD または SAVE コマンドを使用するとき、ASCII(シーケンシャル) ファイルに含まれるレコードは次のフォーマットを持ちます。ASCII テキス ト エディタを使って、次の仕様に準拠したインポート ファイルを作成する こともできます。ただし、大部分のテキスト エディタではバイナリ データ の編集はサポートされていません。 u 先頭列は左揃えの整数(ASCII フォーマット)で、レコードの長さを指 定します。 (この値を計算するときは、各行を区切るキャリッジ リター ン/ライン フィードは無視してください。 )この先頭列の値はデータ ファイルで指定されているレコードの長さと一致します。 w 固定長レコードを含むファイルの場合、指定する長さはデータ ファ イルのレコード長と等しくなるようにしてください。 w 可変長レコードを含むファイルの場合、指定する長さは少なくとも データ ファイルの固定長レコードの長さと等しくなければなりませ ん。 u 長さ列の後には区切り文字(カンマまたはブランク)が続きます。 u 区切り文字の後にレコードのデータが続きます。データの長さは、長さ 列で指定したバイト数と厳密に一致している必要があります。テキスト エディタを使ってインポート ASCII(シーケンシャル)ファイルを作成 している場合は、各レコードの末尾に、そのレコードが適切な長さにな るように必要な数のブランクス ペースを埋め込みます。 u キャリッジ リターン/ライン フィード(16 進で 0D0A)は各行を区切り ます。Scalable SQL メンテナンス ユーティリティはキャリッジ リター ン/ライン フィードをデータ ファイルに挿入しません。 u ファイルの最後の行は end-of-file(Ctrl + Z または 16 進で 1A)でなければ なりません。大部分のテキスト エディタはファイルの末尾にこれを自 動的に挿入します。 8-16 Pervasive.SQL User’s Guide 8-17 ページの図 8-1 に、入力シーケンシャル ファイルに含まれるレコードの 正しいデータ フォーマットを示します。次の例では、データ ファイルのレ コード長が 40 バイトと定義されています。 図 8-1 入力シーケンシャル ファイルに含まれるレコードのフォーマット SDF ファイル フォーマット LOAD または SAVE コマンドを使用するとき、SDF(Standard Data Format) ファイルに含まれるレコードは次のフォーマットを持ちます。ASCII テキス ト エディタを使って、次の仕様に準拠したインポート ファイルを作成する こともできます。ただし、大部分のテキスト エディタではバイナリ データ の編集はサポートされていません。 u すべての列の前後はダブル クォーテーション マーク(“ ”)で囲む必要 があります。 u すべての列はカンマ(,)で区切る必要があります。 u 各レコードはキャリッジ リターン/ライン フィードで終端させます。 次に、入力シーケンシャル ファイルに含まれるレコードの正しいデータ フォーマットの例を示します。 “ART305”,“Sculpture”,“3” <CR/LF> “ART406”,“Modern Art”,“3” <CR/LF> “ART 407”,“Baroque Art”,“3” <CR/LF> メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-17 データベースのバックアップ ここでは、STARTBU および ENDBU コマンドを使ってデータベースをバッ クアップする方法について説明します。 コマンド 説明 プラットフォーム STARTBU バックアップのために定義されている名前付き データベースに対する Continuous オペレー ションを開始します。 Windows NT、NetWare ENDBU バックアップのために定義されている名前付き データベースに対する Continuous オペレー ションを終了します。 Windows NT、NetWare STARTBU STARTBU コマンドは、バックアップの目的で Continuous オペレーションを 開始する名前付きデータベースを指定します。Continuous オペレーションを 使ってファイルをバックアップするには、まずデータベース名を含む STARTBU コマンドを発行します。次にバックアップ プログラムを実行しま す。最後に ENDBU コマンドを発行して Continuous オペレーションを停止 します。 このコマンドはサーバ上でローカルに動作します。 フォーマット SQLUTIL –STARTBU < データベース名 | リストファイル > [ /S ] データベース名 バックアップのために Continuous オペレーションを開始する名前付きデー タベース。この名前は、Scalable SQL セットアップ ユーティリティを使っ てあらかじめ定義されているデータベース名と一致する必要があります。 リストファイル Continuous オペレーションを開始する名前付きデータベースのリストを含 むテキスト ファイルの名前。これらの名前はキャリッジ リターン/ライン フィードで区切ります。 Scalable SQL メンテナンス ユーティリティでは、データベース名を刻印さ れたすべてのファイルに Continuous オペレーションを適用できない場合、 一部のファイルだけに Continuous オペレーションが適用されることはあり ません。 8-18 Pervasive.SQL User’s Guide 注意 このコマンドは、指定したデータベース名のファイルだけを対象に Continuous オペ レーションを開始します。Continuous オペレーションの詳細については、7-54 ペー ジの「Continuous オペレーション」を参照してください。 使用例 次のコマンドは、大学データベースを対象に Continuous オペレーションを 開始します。 sqlutil -startbu btu 次のコマンドは、DBBACKUP.TXT ファイルにリストされているすべてのデー タベースを対象に Continuous オペレーションを開始します。 sqlutil -startbu @dbbackup.txt ENDBU ENDBU コマンド(Windows NT と NetWare で使用できます)は、バック アップ対象としてあらかじめ定義されている名前付きデータベースに対する Continuous オペレーションを終了します。このコマンドは、STARTBU コマ ンドを発行し、さらにバックアップ ユーティリティの実行が終了した後で 実行します。STARTBU コマンドの詳細については、8-18 ページを参照して ください。 このコマンドはサーバ上でローカルに動作します。 フォーマット SQLUTIL –ENDBU < データベース名 | リストファイル > [ /S ] データベース名 Continuous オペレーションを終了する名前付きデータベース リストファイル Continuous オペレーションを終了する名前付きデータベースのリストを含 むテキスト ファイルの名前。このテキストファイルには、キャリッジ リ ターン/ライン フィードで区切られたデータベース名が含まれている必要 があります。 通常、このデータベース名のリストは STARTBU コマンドで使用されたリ ストと同じものです。 使用例 次のコマンドは、大学データベースに対する Continuous オペレーションを 終了します。 sqlutil –endbu btu メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-19 システム障害後のデータの回復 ここでは、システム障害が発生した後で ROLLFWD コマンドを使ってデー タを回復する方法について説明します。 コマンド 説明 プラットフォーム ROLLFWD 最後のバックアップからシステム障害の発生までの間に データベース内のデータ ファイルに加えられた変更を回 復します。 Windows NT、NetWare ROLLFWD ROLLFWD コマンドは、最後のバックアップからシステム障害が発生する までの間にデータ ファイルに加えられた変更を回復します。MicroKernel は 変更内容をアーカイブ ログ ファイルに格納しています。システム障害が発 生した場合は、データ ファイルのバックアップ コピーをリストアし、 ROLLFWD コマンドを使って、ログに格納されているすべての変更内容を バックアップ コピーに適用します。 注意 システム障害が発生する前に、MicroKernel の[アーカイブロギングの実行]オプ ション(3-39 ページ参照)がオンになっていて、ファイルをバックアップしていない と、ROLLFWD コマンドを利用することはできません。ファイルのバックアップにつ いては、7-60 ページの「ファイルのバックアップ」を参照してください。 システム障害が発生した場合は、バックアップをリストアして、すぐに ROLLFWD コマンドを実行します。ファイルへのアクセスを行う前に、 ROLLFWD コマンドを実行する必要があります。このように操作すること で、データ ファイルに書き込まれたデータがシステム障害が発生した時点 の状態になることが保証されます。特に、ファイルへの書き込み、ファイル のロック、またはファイルに対する排他処理を実行する前に、ロール フォ ワードを実行する必要があります。 また、ROLLFWD コマンドを使用すると、ログとして記録されたオペレー ションを含む出力ファイルを生成することもできます。この出力ファイル は、変更内容をロール フォワードする前、またはロール フォワードと同時 に生成できます。 フォーマット SQLUTIL –ROLLFWD < データベース名 | リストファイル > [ </L:[ ダ ンプファイル ] | /W:[ ダンプファイル ]> [/T:< データ長 >] [/E:< キー長 >] [/H] [/V] [/O:< オーナネームリスト > | < オーナネーム > | <*> ]] [/A] [/S] 8-20 Pervasive.SQL User’s Guide データベース名 ロール フォワードの対象となるデータベースの名前。 リストファイル ロール フォワードの対象となるデータベース名のリストを含んだテキスト ファイルのパスそれぞれのデータベース名はキャリッジ リターン/ライン フィードで区切ります。 /L: 出力ファイルは生成しますが、ロール フォワードは行いません。 /W: ロール フォワードと出力ファイルの生成を同時に行います。 ダンプファイル Scalable SQL メンテナンス ユーティリティがログに記録されているオペ レーションのリストを書き込む出力ファイルのファイル名。デフォルトの 設定は、/BLOG/BROLL.LST です。ファイル名にドライブ名またはボ リューム名を指定することはできません。また、ファイル名の先頭はス ラッシュ(/)または円記号(¥)で始める必要があります。出力ファイル は、BLOG.CFG ファイルと同じボリュームに書き込まれます。 /T: データ長 出力ファイルに書き込むオペレーションのデータ バッファの長さを指定し ます。このオプションを指定しないと、データ バッファの内容は出力ファ イルに書き込まれません。 /E: キー長 出力ファイルに書き込むオペレーションのキー バッファの長さを指定しま す。このオプションを指定しないと、キー バッファの内容は出力ファイル に書き込まれません。 注意: キー バッファまたはデータ バッファが、特定の Btrieve オペレー ション用の入力パラメータでない場合、ダンプファイルには何も 記述されません。 /H 出力ファイルに含まれる数値を 16 進表記するようにユーティリティに命令 します。このオプションを指定しないと、出力ファイルに含まれる数値は ASCII フォーマットで表記されます。このオプションは、エントリ数、オ ペレーション コード、キー番号、およびデータ長フィールドのフォーマッ トに影響を与えます。 /V 出力ファイルに追加情報(ユーザ名、ネットワーク アドレス、およびタイ ム スタンプ)を書き込むようにユーティリティに命令します。 /O: 必要な場合は、データ ファイルのオーナ ネームを指定します。ログに記録 されているオペレーションの出力を指定し、データ ファイルのバックアッ プ コピーがリードオンリー アクセスを許可するためのオーナ ネームを持 つ場合にオーナ ネームが必要になります。詳細については、 「オーナ ネー ム」を参照してください。 注意: ROLLFWD コマンドで使用する場合は、先頭文字がアルファベッ トでないときでもオーナ ネームの前後をシングル クォーテーショ ン マーク(')で囲まないでください。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-21 /A 複数のファイルをロール フォワードした後でエラーが発生した場合に、次 のファイルのロール フォワードを継続するかどうかを指定します。 このオプションを指定していないと、Scalable SQL ユーティリティにス テータス コード 12、111、および 113 以外のエラーが発生した時点でロー ル フォワードは中止されます(ただし、それまでに回復した変更内容は ロール バックされません) 。 注意: /A オプションを使用するときは、8-7 ページの「エラー メッセー ジのリダイレクト」と 8-8 ページの「コマンド ファイル」で説明 したように、ファイルへの出力をリダイレクトすることをお勧め します。 /S デフォルトの設定で、Scalable SQL メンテナンス ユーティリティは、出力 が画面いっぱいになるたびに実行を一時停止し、適切なキー入力を行うま で待機します。/S オプションを指定すると、出力画面が自動的にスクロー ルされ、コマンドの実行が継続されます。コマンド ファイルを指定する場 合、コマンド ラインで /S オプションを使用することはできませんが、コマ ンド ファイル内のコマンドに /S オプションを指定することは可能です。 使用例 次のコマンドは、BTUDB データベースに加えられた変更をロール フォワー ドします。 sqlutil -rollfwd btudb 次のコマンドは、BTUDB データベースに加えられた変更をロール フォワー ドし、同時にログに格納されているオペレーションの出力ファイルを生成し ます。この出力ファイルはデフォルトのロケーション(/BLOG/ BROLL.LST)に保存され、それぞれのオペレーションに対してデータ バッ ファの先頭 32 バイトと、キー バッファの先頭 4 バイトを含みます。この出 力ファイルでは数値の 16 進表記が使用されます。 sqlutil -rollfwd btudb /w /t:32 /e:4 /h 次のコマンドは、変更内容のロール フォワードは行わず、ログに格納され ている BTUDB データベースに対するオペレーションの出力ファイルだけを 生成します。出力ファイルのロケーションは ¥TEMP¥BTUDB.LST で、この ファイルにはそれぞれのオペレーションに対するユーザ名、ネットワーク アドレス、およびタイム スタンプが含まれます。ロール フォワードされる データ ファイルには、Sandy および Tom というオーナ ネームが設定されて います。 sqlutil -rollfwd btudb /l:¥temp¥btudb.lst /v /o:Sandy,Tom 8-22 Pervasive.SQL User’s Guide Scalable SQL インタフェースモジュールのバージョン表示 ここでは、VER コマンドを使って、Scalable SQL インタフェースモジュール のバージョンを表示する方法について説明します。 コマンド 説明 プラットフォーム VER 拡張バージョン情報を含めて、サーバにロードされてい NetWare のみ る Scalable SQL インタフェース モジュールのバージョ ンを表示します。 VER VER コマンド(NetWare のみ)は、サーバにロードされている Scalable SQL エンジンのバージョン番号を取得します。 フォーマット SQLUTIL –VER [ /S ] 説明 VER コマンドを実行すると、次のようなメッセージが表示されます。 Scalable SQL バージョン 4.0.0 がロードされています。 データベース名が存在するファイル サーバにロードされている Scalable SQL エンジンのバージョン番号、リビジョン番号、およびパッチ レベルが返さ れます。 メンテナンス ユーティリティを使った Scalable SQL データファイルの操作 8-23 8-24 Pervasive.SQL User’s Guide 第9章 SQLScope を使った SQL ステートメントの実行 SQLScope は、SQL ステートメントを実行する対話型のユーティリティで す。この Win16 ユーティリティは、Windows、Windows 9x、および Windows NT オペレーティング システムで実行できます。この章では、SQLScope を 使って実行できる次の機能について説明します。 u 9-2 ページの「SQLScope の概要」 u 9-5 ページの「データベースへのログイン」 u 9-8 ページの「SQL ステートメントの作成と実行」 u 9-17 ページの「参照整合性の管理」 u 9-22 ページの「ファイルレベル情報のチェック」 u 9-25 ページの「データのインポートとエクスポート」 u 9-29 ページの「破損したデータ ファイルの修復」 また、デフォルトのログイン値や環境設定値を設定することもできます。詳 細については、この章の「SQLScope のカスタム設定」を参照してください。 SQLScope を使った SQL ステートメントの実行 9-1 SQLScope の概要 ➤ SQLScope を起動するには u [スタート]ボタンをクリックし、 [プログラム] 、[Pervasive SQL 7]を ポイントして、 [SQLScope (Win16)]をクリックします。[データベース へのログイン]ダイアログ(図 9-1)が表示されます。 別の方法で SQLScope を起動する場合は、Windows、Windows 9x、また は Windows NT のマニュアルでアプリケーションの起動方法を参照して ください。 注意 SQLScope がロードされるとき、バージョン情報など、このユーティリティに関する 情報を含んだダイアログが表示されます。この情報は、[ヘルプ]メニューの[バー ジョン情報]をクリックして表示することもできます。 ヘルプの使い方 SQLScope の実行中に状況依存ヘルプを利用するには、次のいずれかの操作 を行います。 u F1 キーを押す−カーソルの位置により、選択されているメニュー コマ ンド、ダイアログ、または SQLScope 一般に関するヘルプ情報が表示さ れます。 u Shift+F1キーを押す−ヘルプカーソル(矢印付きの疑問符)が表示され ます。このヘルプカーソルを使って、ヘルプが必要な項目をクリックし ます。 u [ヘルプ]メニューのコマンドを選択する−[ヘルプ]メニューには次 のコマンドが用意されています。 w Windows ヘルプ システムの使い方に関する情報。 w SQLScope ヘルプのトピック目次。 w アクティブな SQLScope ウィンドウに関するヘルプ。 w ショートカット キーのリスト。 w SQLScope のバージョンおよび著作権情報と、Scalable SQL および MicroKernel のバージョン情報。 9-2 Pervasive.SQL User’s Guide ショートカット キーの使い方 SQLScope を使用するとき、ショートカット キーは特定のタスクをすばやく 実行するために役立ちます。表 9-1 にショートカット キーの割当てを示し ます。 表 9-1 SQLScope のショートカット キー キー操作 機能 Alt+F4 SQLScope を終了します。 F1 選択されているメニュー コマンドまたはダイアログに 関するヘルプを表示します。 Shift+F1 ヘルプ モードに入ります。 F5 [テーブル一覧]または[列一覧]リスト ボックスの データベース情報を更新します。 Ctrl+Z [取り消し]コマンドに対応します。 Ctrl+X [切り取り]コマンドに対応します。 Ctrl+C [コピー]コマンドに対応します。 Ctrl+V [貼り付け]コマンドに対応します。 Ctrl+S [SQL テキスト]ボックスをアクティブにします。 Ctrl+D [データベース]リストをアクティブにします。 Ctrl+T [テーブル一覧]リストをアクティブにします。 Ctrl+M [列一覧]リストをアクティブにします。 Ctrl+P [テンプレート一覧]リストをアクティブにします。 Ctrl+R 結果ウィンドウをアクティブにします。 Ctrl+Shift+F 先頭のステートメントに移動します。 Ctrl+Shift+P 前のステートメントに移動します。 Ctrl+Shift+N 次のステートメントに移動します。 Ctrl +Shift+L 末尾のステートメントに移動します。 Ctrl +F 先頭のステートメントを実行します。 Ctrl+U 現在のステートメントを実行します。 SQLScope を使った SQL ステートメントの実行 9-3 表 9-1 SQLScope のショートカット キー キー操作 機能 Ctrl+ <+> (テンキーの +) 次のステートメントを実行します。 Ctrl+ <-> (テンキーの -) 前のステートメントを実行します。 Ctrl+A すべてのステートメントを実行します。 Ctrl+O ステートメントの実行を停止します。 9-4 Pervasive.SQL User’s Guide データベースへのログイン ➤ データベースにログインするには 1. 図 9-1 SQLScope を起動します(9-2 ページを参照してください) 。図 9-1 のよ うな[データベースにログイン]ダイアログが表示されます。 [データベースにログイン]ダイアログ 2. データベース名またはデータ辞書を含むディレクトリのどちらか一方を 指定します。SQLScope で大部分のタスクを実行する前に、対象となる データベースにログインする必要があります。 w データベース名を指定してログインを行う場合は、 [データベース名 を使用]チェック ボックスをオンにして[データベース名]リスト から名前を選択するか、データベースの名前を直接入力します。 [データベース名]リストには、ローカル ワークステーションで使 用可能なすべてのデータベース名が表示されます。また、Scalable SQL がファイル サーバで実行されている場合はネットワーク上で使 用可能なすべてのデータベース名が表示されます。リモート データ ベースを選択する場合は、使用しているエンジンの構成により、リ クエストがローカルに処理されるか、リモートで処理されるかが決 まります。 SQLScope を使った SQL ステートメントの実行 9-5 w 辞書ファイルのロケーションを指定してログインを行う場合は、 [データベース名を使用]チェック ボックスをオフにして、[データ ベースディレクトリ]テキスト ボックスにデータベースのデータ辞 書ファイルのロケーションを指定します。指定するロケーションは、 Scalable SQL データ辞書に対する有効なフル パス名でなければなり ません。サーバ上のディレクトリに対するパス名の中にドライブ名 を使用することができます。 3. 必要に応じて、互換モードを指定します。 w Scalable SQL 4.0 で作成したデータベースにログインする場合は、 [バージョン 3.01 互換]チェック ボックスをオフにします。 この互換モード チェック ボックスを使用すると、Scalable SQL 3.01 データベースにログインして、v3.01 互換モードでオペレーションを 実行することができます。このチェック ボックスをオンにして v4.0 データベースにログインすると、このデータベースでは v4.0 の構文 とデータ型を使用できなくなります。 w Scalable SQL 3.01 で作成したデータベースにログインし、データベー スと v3.01 対応で書かれたアプリケーションとの互換性を維持した い場合は、 [バージョン 3.01 互換]チェック ボックスをオンにしま す。 このチェック ボックスをオフにして v3.01 データベースにログイン すると、v4.0 の SQL 構文を使用しなければならなくなります。この ため、v4.0 の機能を使用すると、このデータベースでは v3.01 のス テートメントおよびアプリケーションとの互換性がなくなってしま います。 4. 必要に応じて、 [ユーザ名]テキスト ボックスにユーザ名を指定しま す。 指定したデータベースのセキュリティが有効になっていない場合は、 ユーザ名を指定する必要はありません。 5. 必要に応じて、 [パスワード]テキスト ボックスにパスワードを指定し ます。 ユーザ名に対するパスワードが定義されていない場合、またはデータ ベースのセキュリティが有効になっていない場合は、パスワードを入力 する必要はありません。セキュリティの目的で、テキスト ボックスに 入力したパスワードは直接表示されません。それぞれの文字に対して 1 つのアスタリスク(*)が表示されます。 6. [ログイン]ボタンをクリックするか、Enter キーを押します。 ログインが正常に終了すると、SQLScope のメイン ウィンドウ(9-8 ページの図 9-3)が表示されます。ログインに失敗した場合は、『Status Codes and Messages 』の説明を参照して、SQLScope が表示するエラー メッセージまたはステータス コードに対する対策を行ってください。 9-6 Pervasive.SQL User’s Guide マルチ ログインの管理 複数のデータベースに同時にログインすることもできます。 ➤ さらに別のデータベースにログインするには 1. [データベース]メニューの[ログイン]をクリックするか、[データ ベース]メニューの[選択]をクリックして、 [データベースを選択] ダイアログの[ログイン]をクリックします。この後は、9-5 ページの 「データベースへのログイン」で説明した操作を繰り返します。 SQLScope メイン ウィンドウ(図 9-3)の[データベース]リストと [データベースを選択]ダイアログ(図 9-2)には、現在使用可能な データベースがすべて表示されます。 図 9-2 [データベースを選択]ダイアログ 2. 現在のデータベースを変更するには、 [データベース]リストまたは [データベースを選択]ダイアログから目的のデータベースを選択しま す。 データベースからのログアウト ➤ データベースからログアウトするには 1. 目的のデータベースが SQLScope メイン ウィンドウ(9-8 ページの図 93)の[データベース]リストに表示されていることを確認します。 2. [データベース]メニューの[ログアウト]をクリックします。 [データベース]メニューの[選択]をクリックしてログアウトを行う こともできます。 [データベースを選択]ダイアログで対象となるデー タベースを選択して、 [ログアウト]ボタンをクリックします。 SQLScope を使った SQL ステートメントの実行 9-7 SQL ステートメントの作成と実行 SQLScope のメイン ウィンドウ(図 9-3)では、対話的に SQL ステートメン トを作成することができます。 図 9-3 SQLScope のメイン ウィンドウ メイン ウィンドウでは次の操作を実行できます。 u データベース情報を表示し、SQL テンプレートを選択する。 この領域は[SQLScope]ウィンドウの上部を構成します。ここには、 ログインしたデータベース、現在選択しているデータベースのテーブル 名と列名、および SQL ステートメントを構築するために使用できる SQL ステートメント テンプレートが表示されます。列更新ボタン ([>>])をクリックすると、現在選択しているテーブルの列名を含む [列一覧]リストを更新することができます。 u SQL ステートメントの構築、確認、および実行を行う。 この領域には、SQL ステートメントを入力するためのテキスト ボック スと、複数の SQL ステートメントの間を移動してそれらのステートメ ントを実行するためのコマンド ボタンが用意されています。 u 結果を表示する。 この領域には、直前に実行したステートメントの結果が表示されます。 u ステータス バーを表示する。 この領域には、現在選択しているコマンドの簡単な説明や、現在実行中 のステートメントの進行状況などが表示されます。 9-8 Pervasive.SQL User’s Guide [SQLScope]ウィンドウ内の領域間を移動するには、マウスまたは[ウィン ドウ]メニューのコマンドを使用します。選択したコマンドに対応する領域 がアクティブになります。別の領域に移動するまで、この領域がアクティブ であり続けます。 画面要素の表示と非表示 [表示]メニューのコマンドは、次のウィンドウ領域に対応しています。 [データベース]、 [テーブル一覧]、 [列一覧]、および[テンプレート一覧] の表示と非表示を切り替えます。 [一覧] ステータス バーの表示と非表示を切り替えます。 [ステータスバー] [移動ボタン] [SQL テキスト]ボックスの左側にある[移動先]ボタンの表示と非表示 を切り替えます。 [実行ボタン] [SQL テキスト]ボックスの右側にある[実行]ボタンの表示と非表示を 切り替えます。 テンプレートの使い方 [テンプレート一覧]には、あらかじめ定義されている、有効な SQL ステー トメントのテンプレートが表示されます。ただし、これらのテンプレートは v3.01 互換モードでは使用できません。 ➤ テンプレートを[SQL テキスト]ボックスにコピーするには テンプレートを[ 1. リストをスクロールして目的のテンプレートを見つけます。または、テ ンプレートの先頭文字のキーを押して、そのテンプレートを見つけま す。 2. 目的のテンプレートが見つかったら、テンプレート名をダブルクリック します(同じ文字で始まるテンプレートが複数ある場合は、テンプレー ト名の先頭文字のキーを何度か押して、使用したいテンプレートに移動 することができます) 。 たとえば、SELECT ステートメントを作成するには、[Select]テンプ レートをダブルクリックします。次のテンプレートが[SQL テキスト] ボックスのテキスト カーソルの位置に挿入されます。 SELECT [DISTINCT] < * | $Select_Terms_List > FROM $Join_List [$Where_Clause] [$Having_Clause] [$Group_By_Clause] [$Order_By_Clause] SQLScope を使った SQL ステートメントの実行 9-9 注意 テンプレート名はドル記号($)で始まります。上の例のように、テンプレート テキ ストには他のテンプレートへの参照が含まれることがあります。いずれかのステート メント要素が必要な場合は、その要素に対応する参照テンプレートを挿入することが できます。たとえば、WHERE 句を定義する必要がある場合は、$Where_Clause を ダブルクリックしてそのテキストを選択し、[テンプレート一覧]リストで [Where_Clause]テンプレートをダブルクリックします。 次の例は、 [Column_Def]テンプレートを使って CREATE TABLE ス テートメント内の列定義を設定したものです。 #Column_Name #Data_Type ( #Data_Length ) [CASE] 注意 シャープ記号(#)で始まる要素は、実際にはテーブル名、列名、または定数と置き 換える、ユーザ定義の変数を表します。たとえば、上の例の変数を実際の値に置き換 えて、ID CHAR (10) のような列定義を生成することができます。シャープ記号をス テートメントの区切り記号として使用している場合は、区切り記号とは関係のない シャープ記号が、SQL スクリプトからすべて削除されていることを確認してくださ い。 SQL ステートメントの作成 データベースにログインした後は、 [SQL テキスト]ボックスで SQL ステー トメントを作成して実行することができます。ここでは、SQLScope でス テートメントを作成する方法について説明します。SQL ステートメントの構 文については『SQL Language Reference』を参照してください。 SQL ステートメントは次のいずれかの方法で作成できます。 u [SQL テキスト]ボックスに直接ステートメントを入力する。 u ➤ ステートメント作成を支援するために用意された[テーブル一覧] 、[列 一覧] 、および[テンプレート一覧]を使用する。 [テーブル一覧]、 [列一覧]、および[テンプレート一覧]を使って SQL ス テートメントを作成するには 1. 実行したいステートメントのタイプに基づいて、 [テンプレート一覧] で適切なテンプレートをダブルクリックします。 2. [SQL テキスト]ボックスで挿入されたステートメント テキストの内容 をチェックし、使用しない部分を削除します。 次の SELECT ステートメントには必要な要素だけが含まれています。 その他のデータ要素はすべて削除されています。 SELECT $Select_Term FROM $Join_List 3. 9-10 Pervasive.SQL User’s Guide 必要な箇所にテーブルおよび列名を挿入します。 これらの名前は、直接[SQL テキスト]ボックスに入力することもで きますが、 [テーブル一覧]または[列一覧]で適切な名前をダブルク リックして挿入することもできます。 [列一覧]を更新するには、[テーブル一覧]からテーブル名を選択し、 列更新ボタン( [>>] )をクリックするか、[データベース]メニューの [列一覧の更新]をクリックします。 注意 別のテーブルを選択しても[列一覧]を更新しないと、[列一覧]以外のオプション をアクティブにするとき、前に選択されていたテーブルが再度選択されてしまいま す。 4. 必要に応じて、定数など、その他の値を挿入します。 5. 省略可能な操作:必要な場合は、ステートメントの末尾にコメントを追 加します。 コメントは、区切り文字(--)で始まり、キャリッジ リターン/ライ ン フィードで終わります。コメントはどのステートメント行にも置く ことができますが、その行のステートメントの最後に挿入する必要があ ります。 次に、コメントの使用例を示します。 (<CR> という記号は行の末尾を 示します。 ) -- generate a list of people from Texas<CR> SELECT Last_Name, First_Name, State<CR> FROM Person<CR> WHERE State = 'TX' -- limits the list to<CR> -- those who live in Texas<CR> Scalable SQL がステートメントをコンパイルするとき、コメント区切り 文字から行の末尾(キャリッジ リターン/ライン フィード)までのテ キストはすべて無視されます。 [SQL テキスト]ボックスでは複数のステートメントを作成することも できます。それぞれのステートメントはステートメント区切り文字で区 切ります。デフォルトの区切り文字はセミコロン(;)です(詳細につ いては、9-34 ページの「ステートメント区切り文字の指定」を参照し てください) 。次の例には 2 つのステートメントが含まれています。 DECLARE BTUCursor CURSOR FOR SELECT Degree, Residency, Cost_Per_Credit FROM Tuition ORDER BY ID; OPEN BTUCursor; [編集]メニューのコマンドを使用すると、[SQL テキスト]ボックス 内のテキストの切り取り、コピー、および貼り付けを行うことができま す。また、たいていの場合はステートメント テキストに加えられた最 後の編集操作を取り消すことができます。 SQLScope を使った SQL ステートメントの実行 9-11 SQL ステートメントの実行 ➤ SQL ステートメントを実行するには 1. [SQL テキスト]ボックス内の目的のステートメントの中にテキスト カーソルを置きます。 2. 次に、 [SQL テキスト]ボックスの右側にある[現在位置]ボタンをク リックするか、 [実行]メニューの[現在位置]をクリックします。 注意 [SQL テキスト]ボックスの先頭の SQL ステートメントを実行するには、[先頭]ボ タンをクリックするか、[実行]メニューの[先頭]をクリックします。 ➤ [SQL テキスト]ボックスのすべてのステートメントを実行するには 1. [実行]メニューの[全て]をクリックします。[全てのステートメント を実行]ダイアログ(図 9-4)が表示されます。 図 9-4 [全てのステートメントを実行]ダイアログ 2. [エラー発生時に停止] このダイアログを使用すると、ステートメントの実行結果を指定した外 部ファイルにリダイレクトすることができます。 [全てのステートメン トを実行]ダイアログを使用して、次のチェック ボックスのオン/オ フを切り替えることもできます。 外部ファイルにアクセスするときにエラーが発生するか、Scalable SQL から エラーが返された場合に、ステートメントの実行を停止します。 [ステートメントテキスト 実行結果だけではなく、ステートメントのテキストも外部ファイルに書き込 みます。 をインクルード] [追加出力] 実行結果を既存のファイルに追加します。 [ステートメントテキストをイン クルード]チェック ボックスをオンにしている場合、このチェック ボック スによりステートメントのテキストも出力ファイルに追加されます。 9-12 Pervasive.SQL User’s Guide [バックグラウンド] ステートメントをバックグラウンドで実行し、SQLScope での作業を継続で きるようにします。 注意 バックグラウンド モード:バックグラウンド プロセスを実行しているときに SQLScope を終了することはできません。さらに、Pervasive.SQL ワークステーショ ン エンジンを使用している場合は、SQL ステートメントをバックグラウンドで実行 することはできません。バックグラウンド モードで実行すると、ステータス コード 265「セッション ID が不正です」が発生します。バックグラウンド モードで実行で きるのは、Pervasive.SQL サーバ エンジンに接続している場合と[サンクの使用]設 定が[オフ]に設定されている場合です。 ステートメントを実行するとき、 [データベース]、 [テーブル一覧]、 [列一 覧]および[テンプレート一覧]は非表示になり、実行モードに入ります。 このとき、SQL ステートメントは変更できなくなります(ただし、[SQL テ キスト]ボックスの既存の SQL ステートメントをスクロールすることは可 能です) 。図 9-5 に、実行モードの SQLScope メイン ウィンドウを示します。 図 9-5 実行モードの SQLScope メイン ウィンドウ SQLScope が実行モードに入っている間、複数のステートメントを指定して いる場合は、 [SQL テキスト]ボックスの右側にある次のいずれかのボタ ン、または[実行]メニューの対応するコマンドを使用することができま す。 [前] 現在のステートメントの前のステートメントを実行します。 [次] 現在のステートメントの次のステートメントを実行します。 SQLScope を使った SQL ステートメントの実行 9-13 実行結果は[SQL テキスト]ボックスの下の結果領域に表示されます。 u SELECT ステートメントを実行した場合は、結果テーブルが表示されま す。結果テーブルが結果領域に収まりきらない場合は、データをスク ロールできるようになります。また、列の幅を調整することもできま す。詳細については、9-15 ページの「結果領域の列幅の調整」を参照し てください。 u SELECT ステートメント以外のステートメントを実行した場合は、ス テートメント実行のステータスが表示されます。 結果領域の内容を確認した後、さらに別のステートメントを実行するか、そ のまま実行モードを終了することができます。 u 実行モードを継続し、 [SQL テキスト]ボックスの別のステートメント を実行するには、 [前]または[次]ボタンをクリックします。 u 実行モードを終了するには、 [停止]ボタンをクリックするか、[実行] メニューの[停止]をクリックします。非表示になっていたリストが再 表示され、 [SQL テキスト]ボックスのステートメントを編集できるよ うになります。 SQL スクリプトの保存 特定のステートメントまたはステートメントのグループを頻繁に使用する場 合は、それらのステートメントを後で何度も使用できるようにスクリプト ファイルとして保存することができます。スクリプト ファイルは、標準的 な ASCII テキスト エディタを使って編集可能なテキスト ファイルです。た だし、スクリプト ファイルのサイズが 32 KB を超えてはいけません。 注意 SQLScope で保存したスクリプトとストアド プロシージャを混同しないでください。 ストアド プロシージャは、Scalable SQL によってプリコンパイルされて X$Proc テーブルに保存されますが、SQL スクリプトは SQLScope によってスクリプト ファ イルとして保存されます。SQLScope では、これらのステートメントをプリコンパイ ルしません。 ➤ 新しいスクリプト ファイルを作成して保存するには 9-8 ページの「SQL ステートメントの作成と実行」で説明した手順に 従って、1 つまたは複数のステートメントを作成します。 1. 2. [ファイル]メニューの[名前を付けて保存]をクリックします。 [SQL スクリプトファイルの保存]ダイアログが表示されます。 3. 9-14 Pervasive.SQL User’s Guide ドライブ、ディレクトリ、およびファイル名を含むフル パスを入力し て[OK]ボタンをクリックします。 ➤ 既存のスクリプト ファイルを呼出すには 1. [ファイル]メニューの[開く]をクリックします。 2. [SQL スクリプトファイルのオープン]ダイアログに、呼出したいスク リプト ファイルのフル パスを入力します。 スクリプト ファイルがオープンされ、その内容が[SQL テキスト] ボックスに表示されます。また、スクリプト ファイルのフル パスがタ イトル バーに表示されます。 3. ➤ 既存のスクリプト ファイルに変更を加えた場合は、 [ファイル]メ ニューの[保存]をクリックして変更内容を保存できます。変更内容は 保存されますが、 [SQL スクリプト ファイルの保存]ダイアログが再度 表示されることはありません。 既存のスクリプト ファイルの名前を変更するには 1. 既存のスクリプト ファイルをオープンします。 2. [ファイル]メニューの[名前を付けて保存]をクリックします。 [SQL スクリプトファイルの保存]ダイアログが表示されます。 3. ドライブ、ディレクトリ、およびファイル名を含む新しいフル パスを 入力して[OK]ボタンをクリックします。 結果領域の列幅の調整 SQL ステートメントを実行して、実行結果が結果領域に表示された後で、 結果領域の列幅を調整することができます。列幅の調整は、現在のステート メントの実行結果の表示にだけ影響を与えます。つまり、別のステートメン トを実行すると、列幅の表示はデフォルトの設定に戻ってしまいます。 列幅を調整するには 2 つの方法があります。 u マウス カーソルを使って直接操作する方法。 u [設定]メニューの[列幅]を使って数値で列幅を設定する方法。 ➤ 直接操作により列幅を調整するには 1. 2 つの列見出しの境界線の上にカーソルを移動します。 2. カーソルの形が左右の矢印のある縦棒に変わったら、列の境界線を新し い位置までドラッグ アンド ドロップします。 SQLScope を使った SQL ステートメントの実行 9-15 ➤ [列幅]コマンドを使って列幅を調整するには 1. [設定]メニューの[列幅]をクリックします。 [列幅]ダイアログ(図 9-6)が表示されます。 図 9-6 [列幅]ダイアログ 2. 必要に応じて、 [次]または[戻る]ボタンをクリックし、対象となる 列に移動します。 3. [幅]テキスト ボックスを使って、選択した列の新しい列幅を指定しま す。 SQLScope ではプロポーショナルなテキストを使って実行結果を表示す るため、 [幅]テキスト ボックスに入力した値は文字数の近似値に対応 します。 4. [OK]ボタンをクリックして設定を終了するか、必要な場合は別の列に ついても操作手順の 2 と 3 を繰り返します。 リスト領域の更新 [データベース]メニューの[一覧の再表示]を使用すると、データ辞書か らすべてのデータベース テーブルの名前を再度読み込んで、それらを [テーブル一覧]に表示することができます。[一覧の再表示]コマンドを選 択する前に選択していたテーブルは、更新後も選択されたままになります。 また、必要な場合は[列一覧]の内容も更新されます。 注意 このコマンドは、現在のデータ辞書に含まれるテーブルや列を変更する一連の SQL ステートメントを実行した後などに役立ちます。 9-16 Pervasive.SQL User’s Guide 参照整合性の管理 注意 SQLScope の RI コマンドは、Windows NT サーバだけで動作します。NetWare サー バ上にあるデータベースの RI をチェックする場合は、10-1 ページの「参照整合性 (RI)のチェックと修復」を参照してください。 SQLScope を使用すると、次の操作を行うことができます。 u データベースに対して定義されている参照制約に関するレポートを生成 する。 u データベースの RI を検証して修復する。たとえば、参照制約をテーブル に追加したときや、データベースの部分バックアップを回復したときに は、RI を検証してください。 データベース名を使ってデータベースにログインする必要があります。対象 となるデータベースには名前があり、Scalable SQL エンジンと同じ Windows NT サーバに格納されていて、参照制約が定義されている必要があります (RI が有効になっているかどうかに関係なく)。また、セットアップ ユー ティリティの Win16 バージョンを使って、Scalable SQL エンジンおよび MicroKernel ルータに対する[サンクの使用]オプションをオンにしておく 必要があります。 参照制約の一覧表示 ➤ 任意の名前付きデータベースを対象に、すべての外部キー定義とその関連情 報の一覧を含むレポートを作成するには 1. データベース名を使ってデータベースにログインします。 2. [データベース]メニューの[制約一覧]をクリックします。 3. [参照整合性の一覧作成]ダイアログ(図 9-7)の[出力ファイル]テ キスト ボックスに、SQLScope が書き込みを行うレポート ファイルのフ ル パスを入力します。指定したファイルが存在しない場合は自動的に 作成されます。 SQLScope を使った SQL ステートメントの実行 9-17 図 9-7 [参照整合性の一覧作成]ダイアログ 4. 省略可能な操作:デフォルトの設定で、出力内容は既存のファイルに追 加されます。指定した出力ファイルが既に存在し、そのファイルの内容 を上書きする場合は、 [追加出力]チェック ボックスをオフにします。 5. 省略可能な操作:レポートにその他のトレース情報(指定したオプショ ンに関するヘッダ情報、フルパス、レポートに含まれる各テーブルに関 する詳細情報など)を追加する場合は、 [トレース情報]チェック ボッ クスをオンにします。 6. 省略可能な操作:レポートに表示される情報のソート順序を選択しま す。 [ソート方法]ボックスには次のオプションが用意されています。 [外部キー名] データベースで定義されている外部キーの名前に基づいて出力をソートし ます。 [親テーブル] データベースで定義されている親テーブルの名前に基づいて出力をソート します。 [従属テーブル] データベースで定義されている従属テーブルの名前に基づいて出力をソー トします。 デフォルトの設定で、情報は外部キー名に基づいてソートされます。 7. 省略可能な操作:SQLScope での作業を継続できるようにバックグラウ ンドでレポートを生成するには、 [バックグラウンド]チェック ボック スをオンにします。 注意 バックグラウンド プロセスを実行しているときに SQLScope を終了することはでき ません。 9-18 Pervasive.SQL User’s Guide 8. [OK]ボタンをクリックするか、Enter キーを押します。 SQLScope はレポートを生成し、それを指定された出力ファイルに書き 込みます。また、 [参照整合性の一覧作成]ダイアログを表示します。 9. レポート ファイルを表示するには[表示]ボタンをクリックします。 エラーが発生した場合は、 [ステータス]ボタンをクリックして、ス テータス コードとエラー メッセージを表示することができます。 参照整合性のチェック ➤ 名前付きデータベースに含まれるオーファン行をチェックしたり、データ ファイルの RI データとデータ辞書の RI データとの一貫性を検証するには 1. データベース名を使ってデータベースにログインします。 2. [データベース]メニューの[制約チェック]をクリックします。 3. [参照整合性のチェック]ダイアログ(図 9-8)の[出力ファイル]テ キスト ボックスに SQLScope が書き込みを行うレポート ファイルを入 力します。 出力ファイルを指定するには、ファイルのフル パスを入力するか、 [参 照]ボタンをクリックして適切なパスを選択します。指定したファイル が存在しない場合は自動的に作成されます。 図 9-8 [参照整合性のチェック]ダイアログ 4. 省略可能な操作:デフォルトの設定で、出力内容は既存のファイルに追 加されます。指定した出力ファイルがすでに存在し、そのファイルの内 容を上書きする場合は、 「追加出力」チェック ボックスをオフにしま す。 SQLScope を使った SQL ステートメントの実行 9-19 5. 省略可能な操作:レポートにその他のトレース情報(指定したオプショ ンに関するヘッダ情報、フル パス、レポートに含まれる各テーブルに 関する詳細情報など)を追加する場合は、 [トレース情報]チェック ボックスをオンにします。 6. 省略可能な操作:データベースに含まれる 1 つのテーブルだけをチェッ クする場合は、 [特定項目のみ]オプションを選択し、テーブル名を指 定します。 [全て]オプションを選択している場合は、データベースに含まれるす べてのテーブルを対象にチェックとレポートの生成が行われます。 7. 省略可能な操作:デフォルトの設定で、オーファン行のチェック、例外 テーブルへの書き込み、オーファン行の削除が行われます。 次のオプションを使って設定を変更することができます。 [オーファン行の数] SQLScope にオーファン行をチェックさせたくない場合は、このチェック ボックスをオフにします。 [例外テーブルへ 書き込み] SQLScope に例外テーブルを作成させたくない場合は、このチェック ボッ クスをオフにします。 [削除] SQLScope に検出されたオーファン行を削除させたくない場合は、この チェック ボックスをオフにします。 詳細については、9-21 ページの「例外テーブル」を参照してください。 8. 省略可能な操作:デフォルトの設定で、データ ファイルの内容とデー タ辞書に含まれる参照制約との間の一貫性がチェックされ、矛盾がある 場合は修復されます。 次のオプションを使って設定を変更することができます。 [インコンシステンシー] SQLScope に一貫性のチェックをさせたくない場合は、このチェック ボッ クスをオフにします。 [修復] SQLScope に矛盾の修復をさせたくない場合は、このチェック ボックスを オフにします。 詳細については、9-21 ページの「データベースの一貫性」を参照して ください。 9. [OK]ボタンをクリックするか、Enter キーを押します。 SQLScope はデータベースの RI をチェックしてレポートを生成し、そ れを指定された出力ファイルに書き込みます。また、 [参照整合性の チェック]ダイアログを表示します。レポート ファイルを表示するに は[表示]ボタンをクリックします。エラーが発生した場合は[ステー タス]ボタンをクリックして、ステータス コードとエラー メッセージ を表示することができます。 9-20 Pervasive.SQL User’s Guide 例外テーブル デフォルトの設定で、オーファン行が検出された各テーブルに対して例外 テーブルが生成されます。例外テーブルはデータベースの一部となり、元の ファイルと同じ名前で同じロケーションに生成されますが、ファイル拡張子 は .EXC になります。たとえば、Patients テーブルに対する例外テーブルが 生成されると、例外テーブルの名前は EXC_Patients になり、PATIENTS.EXC という名前のデータ ファイルに格納されます。 例外テーブルの先頭フィールドはインデックスで、親テーブルの名前が含ま れています。各行の残りの部分には、元のオーファン行と同じフィールドが 最大 4,090 バイトまで含まれます。例外テーブルに含まれる 4,090 バイトを 超える行は切り捨てられます。SQLScope を使用すると、SQL ステートメン トを発行して、通常のテーブルとまったく同様に、例外テーブルの内容を表 示することができます。 データベースの一貫性 デフォルトの設定で、データ辞書に含まれる情報と個別のデータ ファイル に含まれている情報との矛盾がチェックされます。たとえば、データ ファ イルをあるデータベースから別のデータベースに移動した場合などに矛盾の 発生する可能性があります。これは、データ ファイルに格納されている古 いデータベース名がデータ辞書に格納されている新しいデータベース名と一 致しないためです。Scalable SQL では、次の情報の矛盾をチェックします。 データベース名 データ ファイルに格納されているデータベース名と、データ辞書に格納さ れているデータベース名が一致するかどうかチェックします。 主キー データ ファイルに格納されている参照中の外部キーの数と、データ辞書に 格納されている参照制約が一致するかどうかをチェックします。 外部キー データ ファイルで定義されている外部キーの数と、データ辞書に格納され ている参照制約が一致するかどうかをチェックします。 このような情報の矛盾を修復するため、データ辞書に含まれる情報と一致す るように、個別のデータ ファイルに格納されている情報が更新されます。 SQLScope を使った SQL ステートメントの実行 9-21 ファイルレベル情報のチェック ➤ Scalable SQL のデータ ファイルに関するファイルレベルの情報を表示する には 1. データベースにログインします。 2. [テーブル一覧]でデータファイルの情報を表示するテーブルを選択し ます。 3. [データベース]メニューの[テーブル統計情報]をクリックします。 図 9-9 のような[テーブル統計情報]ダイアログが表示されます。 SQLScope では統計情報を表示するだけです。これらの情報を変更する ことはできません。 [テーブル統計情報]ダイアログに表示される情報 については、表 9-2 を参照してください。 図 9-9 [テーブル統計情報]ダイアログ 4. 省略可能な操作:別のテーブルの統計情報を表示するには、 [テーブル] ドロップダウンリストを使って目的のテーブルを選択します。 5. テーブル統計情報のチェックが終了したら、 [閉じる]ボタンをクリッ クします。 9-22 Pervasive.SQL User’s Guide 次に、 [テーブル統計情報]ダイアログに表示される情報の一覧を示します。 表 9-2 表示されるテーブル統計情報とその説明 統計情報 説明 [列] 現在のテーブルで定義されている列を一覧表示します。 [タイプ] 各列で定義されているデータ型を表示します。 [サイズ] 各列のサイズをバイト単位で表示します。 [ファイル] 現在のテーブルに関連付けられているデータ ファイルを表示します。 [ページサイズ] データ ファイルのページ サイズをバイト単位で表示します。ページ サイズ により、テーブル内で定義できるインデックス セグメントの最大数が決まり ます。 Scalable SQL では、データ ファイルを作成するときにデフォルトのページ サイズとして 4,096 バイトが使用されます。CREATE TABLE ステートメン トを使用すると、デフォルト以外のページ サイズを指定できます。 [レコード数] データ ファイルに含まれるレコードの数を表示します。 [未使用ページ数] プリアロケートされている使用可能なページの数を表示します。ページのプ リアロケーションがオンになっている場合、MicroKernel ではデータ ファイ ルを作成するときに、指定された数のページをプリアロケートします。プリ アロケーションにより、MicroKernel が必要とするデータ ファイルのディス ク容量が確実に使用できるようになります。 CREATE TABLE ステートメントを使用すると、プリアロケーションをオン にして、プリアロケートするページ数を指定することができます。 [圧縮] データ圧縮がオンになっているかどうかを表示します。データ圧縮がオンに なっていると、MicroKernel により、データ ファイルに挿入される各レコー ドが圧縮されます。CREATE TABLE ステートメントを使用すると、データ 圧縮をオンにすることができます。 [可変長レコード] データ ファイルに可変長レコードが含まれているかどうかを表示します。 [ブランク切り捨て] ブランク切り捨てがオンになっているかどうかを表示します。これがオンに なっていると、MicroKernel により、可変長レコードに含まれるブランクが 削除されます。ブランク切り捨ては、[可変長レコード数]が[Yes]で[圧 縮]が[No]に設定されている場合のみ適用できます。 SQLScope を使った SQL ステートメントの実行 9-23 表 9-2 表示されるテーブル統計情報とその説明 統計情報 [空きスペース スレッショルド] 説明 データ ファイルに空きスペース スレッショルドがある場合に、そのパーセ ンテージ(5%、10%、20%、または 30%)を表示します。MicroKernel は、 レコードの可変長部分を独自のページ(可変ページ)に格納し、固定長部分 と区別します(これらはデータ ページに格納されます)。 MicroKernel では、このスレッショルドを使って、データを既存の可変ペー ジに追加するか、新しい可変ページを作成するかを決定します。空きスペー ス スレッショルドを大きくすると、可変長レコードが複数のページにわたっ て断片化するのを抑えることができますが、より多くのディスク容量が必要 になります。 このスレッショルドは、[圧縮]または[可変長レコード数]が[Yes]の場 合のみ適用できます。CREATE TABLE ステートメントを使用すると、空き スペース スレッショルドを指定することができます。 [キー 番号] 現在のテーブルに対するキー番号の一覧を表示します。MicroKernel は、 Scalable SQL のインデックスをキーとして格納します。 [名称] 適用できる場合に、インデックスの名前を表示します。名前付きインデック スの詳細については、『Scalable SQL Programmer’s Guide』を参照してくだ さい。 [値] インデックスとして格納されている列値の数を表示します。 [セグメント] インデックスが定義されている列または列のグループを表示します。イン デックスとインデックス セグメントの詳細については、『Scalable SQL Programmer’s Guide』を参照してください。 [属性] インデックスに定義されている属性を表示します。詳細については、 『Scalable SQL Programmer’s Guide』を参照してください。 9-24 Pervasive.SQL User’s Guide データのインポートとエクスポート SQLScope では、UNF、SDF、または ASCII データ形式で格納されている データをインポートまたはエクスポートすることができます。これらの形式 の詳細と、データをインポートまたはエクスポートするときの規則について は、8-10 ページの表 8-2 を参照してください。データ型とユーザ定義または デフォルトのマスクの役割については、 『SQL Language Reference』を参照し てください。 データのインポート [ファイル]メニューの[インポート]コマンドを使用すると、既存の Scalable SQL データベースを対象にデータの挿入、更新、または削除を行う ことができます。挿入、更新、または削除するデータは、8-10 ページの表 8-2 で説明したデータ ファイル形式で指定されている必要があります。ま た、インポート ファイルには、SQL ステートメントで参照されているのと 同数の列が含まれていなければなりません。 ➤ サポートされている形式のファイルからデータをインポートするには 1. SDF または ASC データ形式の場合は、[SQL テキスト]ボックスでイ ンポート ファイルの各列に対応する代替変数を含んだ INSERT、 UPDATE、または DELETE ステートメントを作成します。また、UNF 形式の場合は、代替変数を含まない SELECT ステートメントを作成し ます。 次の例は、サンプル データベースの Course テーブルに行を挿入しま す。この例のインポート ファイルには、Name、Description、および Credit_Hours 列に対応する値が含まれています。 INSERT INTO Course (Name, Description, Credit_Hours) VALUES (@V1, @V2, @V3) 次の例は、サンプル データベースの Course テーブルから行を削除しま す。この例の SDF または ASC インポート ファイルには、Name 列に対 応する値が含まれています。 DELETE FROM Course WHERE Name = @V1 次の例は、Course テーブルから Name、Description、および Credit_Hours 列を選択します。この例のインポート ファイルは、UNF 形式でなければなりません。 SELECT Name, Description, Credit_Hours FROM Course 代替変数の詳細については、 『 SQL Language Reference』を参照してくだ さい。 SQLScope を使った SQL ステートメントの実行 9-25 2. [ファイル]メニューの[インポート]をクリックします。 3. [SQL データのインポート]ダイアログ(図 9-10)で、次の項目を指定 します。 w [ファイルタイプ]ドロップダウン リストで、インポートするファ イルの種類を指定します。 w [ディレクトリ]ボックスおよび[ファイル名]テキスト ボックス を使って、インポートするファイルのフル パスを指定します。 図 9-10 [SQL データのインポート]ダイアログ 省略可能な操作:SQLScope での作業を継続できるようにバックグラウ ンドでファイルをインポートするには、 [バックグラウンド]チェック ボックスをオンにします。 4. 注意 バックグラウンド モード:バックグラウンド プロセスを実行しているときに SQLScope を終了することはできません。さらに、Pervasive.SQL ワークステーショ ン エンジンを使用している場合は、SQL ステートメントをバックグラウンドで実行 することはできません。バックグラウンド モードで実行すると、ステータス コード 265「セッション ID が不正です」が発生します。バックグラウンド モードで実行で きるのは、Pervasive.SQL サーバ エンジンに接続している場合と[サンクの使用]設 定が[オフ]に設定されている場合です。 5. [インポート]ボタンをクリックするか、Enter キーを押します。 指定した SQL ステートメントを使って、指定したファイルから現在の データベースにデータがインポートされます。データのインポートが行 われている間、 [SQLScope インポート]ダイアログが表示されます。 このダイアログには、インポート ファイルのパスと、インポートされ た行数が表示されます。 [一時停止]ボタンをクリックして、インポー トを一時停止することができます。また、インポートを停止するには、 [停止]ボタンをクリックします。 9-26 Pervasive.SQL User’s Guide 注意 インポートを開始してしまうと、操作をキャンセルしてデータベースをインポート前 の状態に戻せなくなります。 6. データのインポートが完了したら、 [閉じる]ボタンをクリックします。 データのエクスポート ➤ サポートされている形式のファイルにデータをエクスポートするには 1. [SQL テキスト]ボックスで、エクスポートの対象となるすべての列を 選択するための SELECT ステートメントを作成します。データは、現 在のマスクまたはデフォルト マスク(現在のマスクが存在しない場合) を使ってエクスポートされます。 SQLScope を使ったステートメントの作成については、9-8 ページの 「SQL ステートメントの作成と実行」を参照してください。SELECT ス テートメントの使用例については 8-15 ページの「SAVE」を参照してく ださい。SQL ステートメントの構文については、『SQL Language Reference』を参照してください。 2. [ファイル]メニューの[エクスポート]をクリックします。 3. [SQL データのエクスポート]ダイアログ(図 9-11)で、次の項目を指 定します。 w [ファイルタイプ]ドロップダウン リストで、SQLScope に作成させ るファイルの種類を指定します。ファイルの種類の詳細については、 表 8-2 を参照してください。 w [ファイル名]テキスト ボックスにエクスポート データを格納する ファイルのフル パスを入力します。 図 9-11 [SQL データのエクスポート]ダイアログ SQLScope を使った SQL ステートメントの実行 9-27 4. 省略可能な操作:SQLScope での作業を継続できるようにバックグラウ ンドでファイルをエクスポートするには、 [バックグラウンド]チェッ ク ボックスをオンにします。 注意 バックグラウンド モード:バックグラウンド プロセスを実行しているときに SQLScope を終了することはできません。さらに、Pervasive.SQL ワークステーショ ン エンジンを使用している場合は、SQL ステートメントをバックグラウンドで実行 することはできません。バックグラウンド モードで実行すると、ステータス コード 265「セッション ID が不正です」が発生します。バックグラウンド モードで実行で きるのは、Pervasive.SQL サーバ エンジンに接続している場合と[サンクの使用]設 定が[オフ]に設定されている場合です。 5. [エクスポート]ボタンをクリックするか、Enter キーを押します。 指定した SQL ステートメントを使って、現在のデータベースから指定 したファイルにデータがエクスポートされます。データのエクスポート が行われている間、 [SQLScope エクスポート]ダイアログが表示され ます。このダイアログには、エクスポート ファイルのパスと、エクス ポートされた行数が表示されます。 [一時停止]ボタンをクリックして、 エクスポートを一時停止することができます。また、エクスポートを停 止するには、 [停止]ボタンをクリックします。 注意 エクスポートを開始してしまうと、操作をキャンセルしてデータベースをエクスポー ト前の状態に戻せなくなります。 6. 9-28 Pervasive.SQL User’s Guide データのエクスポートが完了したら、 [閉じる]ボタンをクリックしま す。 破損したデータ ファイルの修復 ➤ インデックス情報が壊れている SQL Interface データ ファイルを修復するに は 1. 破損したファイルを含むデータベースにログインします。 データベースのログインについては、9-5 ページの「データベースへの ログイン」を参照してください。 2. [SQL テキスト]ボックスで、破損したファイルに含まれるすべての列 を選択する SELECT ステートメントを作成します。 次の例は、Course テーブルのすべての列を選択します。 SELECT * FROM Course 注意 SELECT ステートメントでは WHERE 句を使用しないでください。WHERE 句を使用 すると、Scalable SQL ではインデックスに基づく読み込みが行われます。(WHERE 句のない SELECT ステートメントを使用すると、データ ページのみが読み込まれま す。) SQLScope を使ったステートメントの作成については、9-8 ページの 「SQL ステートメントの作成と実行」を参照してください。SQL ステー トメントの構文については、 『SQL Language Reference』を参照してくださ い。 3. [ファイル]メニューの[エクスポート]をクリックし、データを UNF ファイルにエクスポートします。 データのエクスポートについては、9-27 ページの「データのエクス ポート」を参照してください。 4. [SQL テキスト]ボックスで、既存のデータ ファイルを置き換える ALTER TABLE ステートメントを実行します。 次の例は、Tuition テーブルに対するデータ ファイルを置き換えます。 ALTER TABLE Course USING ’course.mkd’ WITH REPLACE 注意 必ず既存のデータ ファイル名を指定してください。こうすることで、破損したファイ ルを確実に置き換えることができます。 ALTER TABLE ステートメントの詳細については、『SQL Language Reference』を参照してください。 SQLScope を使った SQL ステートメントの実行 9-29 5. [SQL テキスト]ボックスで、データ ファイルのすべての列を選択する SELECT ステートメントを作成します。次の例は、データを Student テーブルに挿入します。 SELECT (ID, Cumulative_GPA, Tuition_ID, Transfer_Credits, Major, Minor, Scholarship_Amount, Cumulative_Hours) VALUES (@id, @cumulative_gpa, @tuition_id, @transfer_credits, @major, @minor, @scholarship_amount, @cumulative_hours) FROM Students 6. [ファイル]メニューの[インポート]をクリックし、手順 3 で作成し た UNF ファイルからデータをインポートします。 データのインポートについては、9-25 ページの「データのインポート」 を参照してください。 9-30 Pervasive.SQL User’s Guide SQLScope のカスタム設定 SQLScope では、次の項目をカスタム設定できます。 u デフォルトのログイン値 u ダイアログのデフォルト値、画面のレイアウト、ステートメントの区切 り文字、設定を保存するためのオプションなどの環境設定 デフォルトのログイン設定の指定 [データベースにログイン]ダイアログをカスタム設定して、データベース 名またはロケーションの自動的な入力、ユーザ名の設定、および互換モード の設定を行うことができます。次にログインを行うとき、変更したデフォル トの設定が有効になります。 ➤ デフォルトの設定を変更するには 1. [設定]メニューの[ログイン時デフォルト設定]をクリックします。 2. [データベースログインのデフォルト設定]ダイアログで、データベー ス名またはデータ辞書のロケーションを入力します。 データベースがユーザ名を必要とする場合は、ユーザ名を指定すること もできます。セキュリティの目的で、パスワードを保存する方法は用意 されていません。 デフォルトの互換モードを指定することもできます。 [バージョン 3.01 互換]チェック ボックスをオンにすると、Scalable SQL v3.01 データ ベースで作業を行い、v3.01 アプリケーションとの互換性も維持するこ とができます。 [バージョン 3.01 互換]チェック ボックスの詳細につい ては、9-6 ページを参照してください。 3. [OK]ボタンをクリックして変更内容を保存します。または、 [キャン セル]ボタンをクリックし、変更内容を保存することなくダイアログを 閉じます。 前の操作で変更したログインの設定は、現在の SQLScope セッションで使用 するためだけに保存されます。 ➤ 将来の SQLScope セッションでも使用できるように設定を保存するには 1. [設定]メニューの[保存]をクリックします。 2. [設定時の保存]ダイアログの[ログイン]チェック ボックスをオンに します。 3. [保存]ボタンをクリックして変更内容を保存します。または、[キャン セル]ボタンをクリックし、変更内容を保存することなくダイアログを 閉じます。 SQLScope を使った SQL ステートメントの実行 9-31 環境設定の指定 SQLScope をカスタム設定して、ダイアログでの特定の値の自動入力や画面 レイアウトの変更を行うことができます。また、SQLScope を設定して、将 来の SQLScope セッションでも使用できるように設定を自動的に保存するこ ともできます。 ➤ 環境設定を指定するには u [設定]メニューの[環境]をクリックします。 [環境設定]ダイアログ (図 9-12)が表示されます。 図 9-12 [環境設定]ダイアログ ダイアログのデフォルト値の設定 [全てのステートメントを実行]、 [SQL データのインポート] 、および [SQL データのエクスポート]ダイアログのデフォルト値を設定することが できます。 ➤ これらのダイアログのデフォルト値を設定するには u [環境設定]ダイアログで対応するボタンをクリックし、適切な値を入 力します。 それぞれのダイアログのオプションについては、次の図を参照してくだ さい。 [全てのステートメントを実行]ダイアログ 図 9-4 [SQL データのインポート]ダイアログ 図 9-10 [SQL データのエクスポート]ダイアログ 図 9-11 9-32 Pervasive.SQL User’s Guide 自動保存の設定 ➤ 現在の SQLScope セッションで行った設定を将来の SQLScope セッション でも使用できるように自動的に保存するには u [設定の自動保存]ボックスのチェック ボックスを使用します。 これらのチェック ボックスをオンにすると、対応する設定が自動的に 保存され、それ以降の SQLScope セッションでも使用できるようになり ます。 デフォルトの画面レイアウトの設定 [環境設定]ダイアログの[表示]ボックスでは、[SQLScope]ウィンドウ のレイアウトに対するいくつかの基本的なデフォルト値を指定することがで きます。 ➤ 画面要素の表示または非表示を設定するには 1. [表示]ボックスの対応するチェック ボックスを使用します。 2. [ステータス 行] チェック ボックスをオンにすると、対応する要素が画面上に表示され ます。また、チェック ボックスをオフにすると、対応する画面要素は 非表示になります。次の画面要素の表示と非表示を切り替えることがで きます。 画面下部にあるステータスバーの表示と非表示を切り替えます。 [一覧領域] [テーブル一覧]、 [列一覧]、および[テンプレート一覧]の表示と非表示 を切り替えます。 [移動ボタン] [SQL テキスト]ボックスの左側にある[移動先]ボタンの表示と非表示 を切り替えます。 [実行ボタン] [SQL テキスト]ボックスの右側にある[実行]ボタンの表示と非表示を 切り替えます。 3. リスト領域の高さを変更するには、 [高さ]テキスト ボックスに適切な 値を入力します。デフォルトの高さは 4 行です。 4. [SQL テキスト]ボックスの高さを変更するには、 [ステートメント領 域の高さ]テキスト ボックスに適切な値を入力します。入力する数値 は一度に表示されるテキストの行数に対応します。デフォルトの高さは 11 行です。 5. 今後の SQLScope セッションで、使用するモニタに合わせて、 [SQLScope]ウィンドウが自動的に最大化するように設定する場合は、 [起動時最大化]チェック ボックスをオンにします。 SQLScope を使った SQL ステートメントの実行 9-33 ステートメント区切り文字の指定 SQL ステートメントの区切りとして使用する文字を指定することもできま す。デフォルトの区切り文字はセミコロン(;)です。しかし、ストアド プ ロシージャ宣言の構文ではセミコロンが使用されるため、SQL ステートメ ントを区切るために異なる文字を指定できます。 ➤ ステートメント区切り文字を変更するには 1. [ステートメント区切り記号]ドロップダウン リストから新しい文字を 選択します。 2. 9-34 Pervasive.SQL User’s Guide シャープ記号(#)またはセミコロン(;)を選択します。 第 10 章 参照整合性( 参照整合性(RI)のチェック )のチェック と修復 注意 Windows NT ユーザ と Workstation エンジンユーザ:SQLScope の RI コマンドを 使って、RI ユーティリティのオペレーションを実行することができます。詳細につい ては、第 9 章の 9-17 ページの「参照整合性の管理」を参照してください。 RI ユーティリティは、ファイル サーバで NLM として実行するコマンドラ イン ユーティリティです。RI ユーティリティは、ファイル サーバのコン ソールで実行するか、RCONSOLE リモート ファイル サーバ コンソール ユーティリティを介して実行できます。RI ユーティリティの実行方法と、 RI ユーティリティを使用する前に知っておくべき基本的な考え方について は、 「RI ユーティリティの概要」を参照してください。 この章では、RI ユーティリティを使って実行できる次の機能について説明 します。 u 10-2 ページの「RI ユーティリティの概要」 u 10-5 ページの「名前付きデータベースを対象とする参照整合性(RI)の 検証と再確立」 注意 このユーティリティは定義済みの参照制約を含む名前付きデータベースのみを対象に 動作します。参照整合性と参照制約の詳細については、 『Scalable SQL Design Guide』 を参照してください。 参照整合性(RI)のチェックと修復 10-1 RI ユーティリティの概要 ➤ RI ユーティリティを実行するには u ファイル サーバのコンソール プロンプトに次のコマンドを入力します。 RIUTIL [ - コマンド [ パラメータ ...] ] | @ ファイル 次のような RIUTIL のコマンド。 コマンド LIST CHECK 外部キー定義と関連情報のリストを表示します。 データ ファイルの一貫性を検証し、オーファン レコード (Orphan Record)をチェックします。 入力したコマンドを実行するために必要な情報。必要なパラメータの詳細 については、それぞれの RI ユーティリティ コマンドの説明(次のセク ション)を参照してください。 パラメータ コマンド ファイルのフル パス名。ファイル名の先頭にはアットマーク (@)を入力する必要があります。 ファイル ➤ オンラインでコマンドの簡単な説明を表示するには u 次のコマンドを実行します。 riutil 注意 ファイルがオープンされているデータベースを対象に RIUTIL CHECK コマンドを実 行することはできませんが、RIUTIL LIST コマンドは実行できます。ユーザがログイ ンしているときに RIUTIL LIST コマンドを実行しても、それらのユーザが加えた変更 は LIST コマンドのレポートには表示されません。 RI ユーティリティのコマンド ファイル コマンド ファイルを使うと、次のような操作を行うことができます。 u コマンド ラインに収まりきらない長いコマンドを実行する。 u 頻繁に使用するコマンドを入力する。コマンド ファイルには、コマン ド ラインで必要となる情報とまったく同じ情報を指定します。 10-2 Pervasive.SQL User’s Guide コマンド ファイルに適用される規則 コマンド ファイルを作成するときには、次の規則に従います。 u 各行には 130 文字まで入力できます。 注意 130 文字を超える行を入力すると、ファイル サーバの異常終了の原因になることがあ ります。このため、ファイル サーバ コマンド(.NCF)ファイルの中に長い RIUTIL コマンドを置かないでください。 u 1 つのパラメータを 2 行に分けることはできません。 u 1 つのコマンド ファイルで複数のコマンドを実行することはできませ ん。 u コマンド ファイルのサイズは 1,000 バイトに制限されています。 使用例 次に、LIST.CMD という名前のサンプル コマンド ファイルを示します。こ のファイルでは、RIUTIL -LIST コマンドを呼出し、BTU 名前付きデータ ベースに対する外部キー定義と関連情報の一覧を表示します。コマンドの出 力は INFO.TXT ファイルにリダイレクトされます。 -list btu /O:sys:¥SSQL¥demodata¥info.txt 次のコマンドは LIST.CMD ファイルを使用します。 riutil @sys:¥ssql¥demodata¥list.cmd RI ユーティリティのコマンド 次に、RI ユーティリティを使用する前に理解しておくべき基本的な概念に ついて説明します。 名前付きデータベース RI ユーティリティは名前付きデータベースのみを対象に動作します。この データベースでは、データ辞書に格納されている情報に基づいてデータ ファイルの検索を行います。辞書をスキャンするとき、このユーティリティ は次の形式のパス名だけを受け付けます。 vol:dir¥file 絶対パス file または dir¥file 相対パス 絶対パスはファイルの厳密なロケーションを指定します。絶対パスではボ リュームを指定する必要があります。 参照整合性(RI)のチェックと修復 10-3 相対パスとは、名前付きデータベースに関連する各データ ファイルのロ ケーションに追加されるファイル名またはパスのことです。たとえば、BTU という名前のデータベースに、¥SSQL¥DEMODATA1、¥SSQL¥DEMODATA2 という名前と順序で定義された 2 つのデータ ファイルのロケーションがあ るとします。 このとき、FACULTY.MKD のような相対ファイル名を指定すると、この ファイルはまず ¥SSQL¥DEMODATA1 で検索されます。見つからない場合 は、さらに ¥SSQL¥DEMODATA2 ディレクトリで検索されます。 注意 RIUTIL が動作するサーバ環境ではドライブ名または暗黙的ドライブの使用はサポー トされていないため、どちらかを指定してもステータス コード 11 が返されます。RI ユーティリティが見かけ上のボリュームを使用するのは、ファイルが SYS: ボリュー ム上に格納されているときだけです。 参照制約 参照整合性とは、あるテーブルの列(または列のグループ)が別のテーブル の列(または列のグループ)を参照しているとき、これらのテーブルに加え られた変更の同期を保証することです。また、参照制約とは、テーブル間の 関係を定義した規則のことです。 RI ユーティリティについて説明するこの章では、参照整合性や参照制約に 関連して次の用語を使用します。 従属テーブル 少なくとも 1 つの外部キーを含んでいるテーブル。 外部キー 同じテーブルまたは異なるテーブルにある主キーを参照する列または列の グループ。 オーファン レコード 親テーブルの中に一致する値を持たない外部キー値を含むレコード。 親テーブル 従属テーブル内の外部キーによって参照される主キーを含むテーブル。 RI データ Scalable SQL で内部的に使用され、データ ファイルと辞書ファイルの両方 に格納されている参照制約に関する情報。 10-4 Pervasive.SQL User’s Guide 名前付きデータベースを対象とする参照整合性(RI)の検証 名前付きデータベースを対象とする参照整合性( )の検証 と再確立 ここでは、次の機能について説明します。 u 10-6 ページの「LIST コマンドを使った参照制約レポートの生成」 u 10-9 ページの「オーファン レコードのチェックと矛盾する RI 情報の修 復」 u 10-9 ページの「オーファン レコードまたは矛盾リストの生成」 u 10-10 ページの「例外テーブルの生成」 LIST LIST コマンドは、現在のサーバ上にある任意の名前付きデータベースを対 象に、すべての外部キー定義とその関連情報を一覧表示します。 書式 RIUTIL -LIST [ データベース名 ]/O:vol:path [ オプション ...] データベース名 参照整合性情報を確認するデータベースの名前。このパラメータにアスタ リスク(*)を入力すると、サーバ上にあるすべての名前付きデータベース に対する参照整合性情報が生成されます。 /O:vol:path 生成された情報の格納先となるファイルのフル パス。 [オプション]には、次のオプションを任意の順序で指定できます。 /P: パスワード 指定した名前付きデータベースに関連する辞書ファイルのマスターパス ワード。対象となるデータベースのセキュリティが有効になっている場合、 Scalable SQL ではパスワードを必要とします。/P: オプションに続けてアス タリスク(*)を指定すると、データベースをオープンするたびに、それぞ れに対するパスワードの入力を要求するプロンプトが表示されます。 /A /O: オプションを使って既存のファイルを指定している場合、生成された情 報を既存のファイルに追加します。 /S: ソート レポートの中に一覧表示する情報の順序。次のいずれかを指定します。 N 外部キーの名前。 P 親テーブルの名前。 D 従属テーブルの名前。 参照整合性(RI)のチェックと修復 10-5 /T 追加のトレース情報を表示します。このオプションはデータベースに発生 した問題を診断するときに役立ちます。 /? LIST コマンドの構文を表示します。 LIST コマンドを実行するときにデータベース名を指定しないと、次の例の ように、使用可能なすべての名前付きデータベースが表示されます。 Database Names on This Server BTU BTUDEMO また、使用方法に関する簡単なメッセージも表示されます。 LIST コマンドを使った参照制約レポートの生成 ➤ レポートの情報をテキスト ファイルに書き込むには 次のように、LIST コマンドを使用し、/O: オプションを指定します。 1. RIUTIL -LIST btu /O:sys:¥ssql¥demodata¥info.txt 出力ファイルには、参照制約が適用されているデータベースのテーブル 間の関係についての情報が含まれます。 たとえば、LIST コマンドを実行すると、BTU データベースに関する次 のような出力(例 10-1 を参照)が生成されます。 例 10-1 参照制約レポート Foreign Key : BILLINGBYREGISTRAR Parent Table : Person Key #: 0 Column(s):ID Dependent Table : BILLING Key #: 2 Column(s): REGISTRAR_ID ****************** Delete Rule : Restrict Update Rule : Restrict Foreign Key : BILLINGFORASTUDENT Parent Table : STUDENT Key #: 0 Column(s):ID Dependent Table BILLING Key #: 3 Column(s): STUDENT_ID Delete Rule Restrict Update Rule Restrict 10-6 Pervasive.SQL User’s Guide 2. デフォルトの設定で、生成される情報は外部キー名に基づいてソートさ れます。/S:P オプションを使用すると、親テーブルの名前に基づいて外 部キーをグループ化することができます。また、/S:D オプションを使 用すると、従属テーブル名に基づいて外部キーをグループ化できます。 3. デフォルトの設定で、出力ファイルに含まれる既存の情報は上書きされ ます。/A オプションを指定すると、新しい情報が既存のファイルに追 加されます。 4. /T オプションを指定すると、指定したコマンド ライン オプションに関 するヘッダ情報、フル パス、レポートに含まれる各テーブルに関する 追加情報などのトレース情報がレポートに追加されます。 使用例 次のコマンドは、BTU 名前付きデータベースに関する参照制約をレポート します。出力は INFO.TXT ファイルにリダイレクトされ、このファイルの 既存の内容に追加されます。また、参照制約は親テーブルの名前に基づいて ソートされます。 riutil -list btu /o:sys:¥ssql¥demodata¥info.txt /a /s:p 次のコマンドは、現在のサーバ上にあるすべての名前付きデータベースに関 する参照制約をレポートします。出力は INFO.TXT ファイルにリダイレク トされます。 riutil -list * /o:sys:¥ssql¥demodata¥info.txt CHECK CHECK コマンドはオーファン レコードをチェックし、ファイルの参照整合 性データ(各データ ファイルに格納されています)と辞書の参照整合性 データ(辞書ファイルに格納されています)との一貫性を検証します。ま た、ログの作成やオーファン レコードの削除とともに、一貫性に矛盾のあ る RI 情報を修復します。 書式 RIUTIL -CHECK データベース名 従属テーブル /O:vol:path [ オプション ...] データベース名 参照整合性情報をチェックするデータベースの名前。 従属テーブル チェックする従属テーブルの名前。このパラメータにアスタリスク(*)を 入力すると、指定した名前付きデータベースに含まれるすべての従属テー ブルに対する RI がチェックされます。テーブル名にスペースが含まれてい る場合は、その前後をダブル クォーテーション マーク(")で囲む必要が あります。 /O:vol:path 生成した CHECK レポートの格納に使用するファイルのフル パス。 参照整合性(RI)のチェックと修復 10-7 [オプション]には、次のオプションを任意の順序で指定できます。 /P: パスワード 指定した名前付きデータベースに関連する辞書ファイルのマスタ パスワー ド。対象となるデータベースのセキュリティが有効になっている場合、 Scalable SQL ではパスワードを必要とします。 /A /O: オプションを使って既存のファイルを指定している場合、生成された情 報を既存のファイルに追加します。 /T 出力ファイルに追加のトレース情報を表示します。このオプションはデー タベースに発生した問題を診断するときに役立ちます。 /C 指定した従属テーブルに含まれるオーファン レコードをチェックします。 /W 指定した従属テーブルに含まれるそれぞれのオーファン レコードを最大 4KB まで例外テーブルに書き込みます。このオプションを指定する場合、/ C オプションを明示的に指定する必要はありません。/C オプションは自動 的に指定されたことになります。 /D 従属テーブルからすべてのオーファン レコードを削除します。このオプ ションを指定する場合、/C オプションを明示的に指定する必要はありませ ん。/C オプションは自動的に指定されたことになります。 /I ファイルと辞書の RI データの一貫性をチェックします。 /R データ辞書に格納されている RI 情報を標準として使用し、データ ファイ ルに含まれる一貫性に矛盾のある従属テーブル RI データを修復します。こ のオプションを指定する場合、/I オプションを明示的に指定する必要はあ りません。/I オプションは自動的に指定されたことになります。 /? CHECK コマンドの構文を表示します。 CHECK コマンドを実行するときにデータベース名または従属テーブルを指 定しないと、次の例のように、使用可能なすべての名前付きデータベースが 表示されます。 Database Names on This Server BTU BTUDEMO また、使用方法に関する簡単なメッセージも表示されます。 10-8 Pervasive.SQL User’s Guide オーファン レコードのチェックと矛盾する RI 情報の修復 指定した名前付きデータベースの RI 情報の中に一貫性の矛盾が検出される と、 「Error opening table. Status = 73」というメッセージが返されます。 ➤ データベースに含まれるすべての従属テーブルを対象にオーファン レコー ドと矛盾する RI データをチェックするには u 次のコマンドを入力します。 riutil -check [file] * /o:[path] /c /i このコマンドは元のデータベースには影響を与えません。 ➤ オーファン レコードをチェックし、それらを例外テーブルに書き込んだ後、 元のテーブルから削除するには u 次のコマンドを入力します。 riutil -check btu * /o:sys¥ssql¥demodata¥student.mkd /w /d /r また、このコマンドは、検出された矛盾のある RI データをチェックし て修復します。 ➤ 一貫性の矛盾を修復するには 1. Pervasive.SQL セットアップ ユーティリティを使って(3-18 ページの 「名前付きデータベースの修正」を参照)、名前付きデータベースに対す る[整合性の設定]フラグをオフにします。 2. /R オプションを指定して CHECK コマンドを実行し、一貫性の矛盾を 修復します。 3. 再度セットアップ ユーティリティを使って、名前付きデータベースに 対する[整合性の設定]フラグをオンにします。 オーファン レコードまたは矛盾リストの生成 /O: オプションを使って、レポート情報を出力ファイルにリダイレクトする 方法を指示します。 ➤ オーファン レコードと一貫性の矛盾に関する情報を含んだレポートを生成 するには 1. /C または /I オプションを指定して、CHECK コマンドを実行します。次 のレポート出力例には、一貫性に矛盾のある名前付きデータベースに関 する情報が表示されています。このとき、RI データの修復とオーファ ン レコードのチェックも行われます。 参照整合性(RI)のチェックと修復 10-9 例 10-2 一貫性の矛盾およびオーファン レコード検証レポート ****************************************************************** Checking Foreign Key STUDENTHASATUITION for Table STUDENT Parent Table Tuition Checking RI Data in Parent Table Tuition Dictionary Data Version # : 7.00 Database Name :BTU1 Table Name :Tuition Parent to Other Keys : 1 # Foreign Key Defs : 0 File Data 7.00 BTU2 Tuition 1 0 RI Data is NOT consistent. RI Data Repaired. Beginning Orphan Check. Total records in dependent table :1404 Total orphan records : 0 Total orphan records written to exception table : 0 Total orphan records deleted from dependent table: 0 End of Orphan Check. End of check for Foreign Key:STUDENTHASATUITION 2. デフォルトの設定で、出力ファイルに含まれる既存の情報は上書きされ ます。/A オプションを指定すると、新しい情報が既存のファイルに追 加されます。 3. /T オプションを指定すると、指定したコマンド ライン オプションに関 するヘッダ情報、フル パス、レポートに含まれる各テーブルに関する 追加情報などのトレース情報がレポートに追加されます。 例外テーブルの生成 ➤ 例外テーブルを生成して、データベースの辞書に追加するには u /W オプションを指定します。 例外テーブルはオリジナル ファイルと同じ名前で同じロケーションに 生成されますが、ファイル拡張子は .EXC になります。たとえば、 BILLING.MKD ファイルに含まれる Billing テーブルに対する例外テー ブルが生成される場合、例外テーブルの名前は EXC_Billing になり、 BILLING.EXC というファイルに格納されます。 CHECK /W コマンドを実行したときに Billing テーブルに 4 つのオー ファン レコードが含まれていた場合、次のような出力が生成されます。 この場合、オーファン レコードは例外テーブルに書き込まれますが、 削除されることはありません。 10-10 Pervasive.SQL User’s Guide 例 10-3 サンプル例外テーブル ********************************************************* Checking Foreign Key BILLINGBYREGISTRAR for Table BILLING Parent Table Person Checking RI Data in Parent Table Person RI Data is consistent. Beginning Orphan Check. Exception table EXC_BILLING added to database. Total records in dependent table :1319 Total orphan records : 4 Total orphan records written to exception table : 4 Total orphan records deleted from dependent table: 0 End of Orphan Check. End of check for Foreign Key:BILLINGBYREGISTRAR 例外テーブルのレコードの先頭列はインデックス列で、そこには親テー ブルの名前が含まれます。各レコードの残りの部分には、オリジナルの オーファン レコードと同じ列が最大 4,090 バイトまで含まれます。例外 テーブルに含まれる 4,090 バイトを超えるレコードは切り捨てられま す。 ➤ 完全なオーファン レコードを含むテーブルを生成するには 1. 元のテーブルからオーファン レコードを選択し、それらを別の例外 テーブルに挿入する、次のような SQL ステートメントを実行します。 INSERT INTO Orph_Billing SELECT * FROM Billing WHERE ID = (SELECT ID FROM EXC_Billing); 2. SQLScope などの Scalable SQL アプリケーションを使用すると、例外 テーブルの内容を確認することができます。 参照整合性(RI)のチェックと修復 10-11 10-12 Pervasive.SQL User’s Guide 第 11 章 MicroKernel データ ファイル の変換 この章では、リビルド ユーティリティを使って、以前のバージョンの MicroKernel ファイルを v7.0 フォーマットに再構築する方法について説明し ます。また、ビュー変換ユーティリティを使って、Scalable SQL v3.01 の ビューを v4.0 に移行する方法についても説明します。 これらのオペレーションの詳細については、次のセクションを参照してくだ さい。 u 11-2 ページの「MicroKernel データ ファイルの変換」 u 11-13 ページの「Scalable SQL 3.01 ビューの 4.x への移行」 MicroKernel データ ファイルの変換 11-1 MicroKernel データ ファイルの変換 Pervasive.SQL には 2 つのバージョンのリビルド ユーティリティが用意され ています。Windows 9x、Windows NT、Windows 3.x、および OS/2(サーバ版 のみ)で実行する対話型バージョンと、NetWare 上で NLM として実行する コマンドライン バージョンの 2 つです。Pervasive.SQL ワークステーション エンジンでは、リビルド ユーティリティの Win32 バージョンのみを使用し ます。 リビルド ユーティリティは、次の表のような MicroKernel データ ファイル の変換を行うことができます。 表 11-1 リビルド ユーティリティによる変換 変換前のファイル フォーマット 変換後のファイル フォーマット 変換の理由 6.0 より前 7.x 7.x の機能を利用し、全般的なパフォーマンスを向上 させる。 6.x 7.x 7.x の機能を利用し、全般的なパフォーマンスを向上 させる。 7.x 7.x 変換前のファイルにシステム キーがない。 6.0 より前 6.x 6.x の機能を利用し、全般的なパフォーマンスを向上 させる。このオプションは、まだ 6.x エンジンととも に 7.x エンジンを実行している場合のみ使用します。 変換の結果として生成されるファイル フォーマットは、MicroKernel の [ファイル バージョンの作成]環境設定オプション(3-39 ページを参照 ) に 対する設定値によって異なります。なお、このオプションはセットアップ ユーティリティを使って設定します。たとえば、 [ファイル バージョンの作 成]オプションに[7.x]を設定し、6.x ファイルを対象にリビルド ユーティ リティを実行すると、元のファイルは 7.x フォーマットに変換されます。 ファイルを 7.x フォーマットに変換するとき、MicroKernel の[システム データ]環境設定オプション(3-40 ページを参照)は、一意のキーを含ま ないファイルにシステム定義ログ キーを追加するかどうかを指定します。 リビルド ユーティリティを実行する前に、変換の対象となるすべてのデー タ ファイルのバックアップを作成してください。バックアップ コピーを作 成することで、ユーティリティの実行中に停電などの不測の事態が発生した 場合にも、データが失われるのを防ぐことができます。バックアップを確実 に実行するために、次のいずれかのオペレーションを実行してください。 u バックアップ ユーティリティを実行する前にすべてのデータ ファイル をクローズします。 u Continuous オペレーションを使用します。 11-2 Pervasive.SQL User’s Guide u 排他書き込みモードでファイルをオープンするバックアップ ユーティ リティを使用します。その結果、他のプロセスはバックアップの対象と なるファイルに書き込みを行うことができません。バックアップ ユー ティリティがファイルに対する排他的なアクセス権を持っていることを 確認してください。 注意 Continuous オペレーション モードに入っているファイルを対象にリビルド ユーティ リティを実行することはできません。 次のセクションでは、このユーティリティの 2 つのバージョンについて個別 に説明します。 u 「対話型リビルド ユーティリティ」 u 11-9 ページの「コマンドライン リビルド ユーティリティ」 対話型リビルド ユーティリティ ここでは、Windows 3.x、Windows 9x、Windows NT、および OS/2(サーバ版 のみ)で実行する対話型リビルド ユーティリティの使い方について説明し ます。このセクションの説明は Windows 環境を前提にしていますが、OS/2 (サーバ版のみ)環境でも同様の操作を行うことができます。 リビルド ユーティリティの実行 ➤ Windows 3.x に対応したリビルド ユーティリティを実行するには u [Pervasive.SQL 7]プログラム グループで、 [Rebuild ユーティリティ]ア イコンをダブルクリックします。図 11-1 のようなリビルド ユーティリ ティのメイン ウィンドウが表示されます。 ➤ Windows 9x、 、Windows NT に対応したリビルド ユーティリティを実行する には 1. [スタート]ボタンをクリックし、[プログラム] 、[Pervasive SQL 7]を ポイントします。 2. [Rebuild(Win32)]をクリックします。図 11-1 のようなリビルド ユー ティリティのメイン ウィンドウが表示されます。 MicroKernel データ ファイルの変換 11-3 図 11-1 リビルド ユーティリティのメイン ウィンドウ ヘルプの表示 リビルド ユーティリティのヘルプを表示するには、 [ヘルプ]メニューのコ マンドを選択するか、ダイアログの[ヘルプ]ボタンをクリックします。 データ ファイルの変換 ➤ データ ファイルを変換するには 1. [オプション]メニューの[ファイルの選択]をクリックします。次の ような[ファイルの選択]ダイアログが表示されます(図 11-2) 。 11-4 Pervasive.SQL User’s Guide 図 11-2 [ファイルの選択]ダイアログ 2. [追加]ボタンをクリックし、リビルドの対象となるファイルを選択し ます。一度に複数のファイルを選択することもできます。リビルドの対 象となるファイルの追加が終了したら[OK]ボタンをクリックします。 元のファイルと同じディレクトリにリビルド ファイルを作成すると、 ファイルの変換終了後に元のファイルは削除されます。新しいリビルド ファイルを異なるディレクトリに作成すると、元のファイルは削除され ません。 3. 図 11-3 ファイルのリビルドを行う前に、環境設定オプションを指定することが できます。 [オプション]メニューの[設定]をクリックすると、[設 定]ダイアログが表示されます(図 11-3) 。 [設定]ダイアログ MicroKernel データ ファイルの変換 11-5 選択したファイルのリビルドを行う前に、リビルド ユーティリティに 適用する環境設定オプションを変更することができます。表 11-2 に、 これらのオプションの一覧を示します。 表 11-2 [設定]ダイアログのコントロール コントロール [出力ディレクトリ] 説明 リビルド ファイルを格納するロケーションを指定します(デフォルトのロ ケーションはカレント ディレクトリです)。既に存在するディレクトリを 指定する必要があります。 このオプションにより、サイズの大きなファイルを異なるサーバでリビル ドできます。リビルド ファイルを書き込むサーバには、MicroKernel とそ の通信コンポーネントがロードされている必要があります。指定するパス にはワイルドカード文字を使用しないでください。 [出力ディレクトリ]ボックスに指定したロケーションが元のファイルの ロケーションと異なる場合、リビルド時に元のファイルは削除されませ ん。出力ディレクトリが元のファイルのディレクトリと同じであると、リ ビルド終了後に元のファイルは削除されます。 [ステータスファイル パス] リビルド ログ ファイルを格納するロケーションを指定します(デフォル トのロケーションはカレント作業ディレクトリです)。指定するパスには ワイルドカード文字を使用しないでください。 [エラー時続行] リビルド プロセスでエラーが発生した場合にリビルド ユーティリティの 実行を継続するかどうかを指定します。[はい]を選択すると、エラーが 発生しても次のファイルを対象とする処理が継続されます。MicroKernel データ ファイルに関連しないエラーやその他のエラーが通知されますが、 データ ファイルのリビルドは継続されます。[いいえ]を選択した場合は、 エラーが発生するとリビルドが停止します。 このオプションは、リビルド ファイルにワイルドカード文字を指定した場 合に役立ちます。 [終了時に設定を保存] その後のリビルド セッションでも使用できるようにダイアログの現在の設 定値を保存します。 [システムデータ] システム データを使ってファイルをリビルドするかどうか指定します。 ユーザ定義の一意なキーが存在しないと、MicroKernel ではシステム定義 ログ キーを含まないファイルを対象にロギングを実行することはできませ ん。 11-6 Pervasive.SQL User’s Guide 表 11-2 [設定]ダイアログのコントロール コントロール [ページサイズ] 説明 新しいファイルのページ サイズ(バイト単位)を指定します。 [EXISTING]、 [512]、 [1024] 、[2048]、 [3072] 、または[4096]のいず れかを選択します。[EXISTING]を選択すると、既存のページ サイズが 使用されます。ただし、オリジナルのサイズが有効でない場合は、ページ サイズが変更されます。 たとえば、ページ サイズが 1,024 で、24 個のキーを含む v5. x ファイルが あるとします。Btrieve 6.0 以降では、1,024 のページ サイズに対して 23 個までのキーしかサポートされていないため、このファイルに最適なペー ジ サイズが自動的に選択されて、情報メッセージがステータス ファイル に書き込まれます。 [キー番号] ファイルをリビルドするときにユーティリティが読み込みの基準とする キーを指定します。このオプションで[NONE]を指定すると、ファイル の複製、インデックスの削除、新しいファイルへのレコードのコピーが行 われた後、インデックスのリビルドが行われます。より高速にリビルドが 実行され、キー番号を指定した場合よりも作成されるファイルのサイズが 小さくなるため、できるかぎりこの方法を選択してください。 この方法では、元のファイルとは異なる物理順序のレコードを含む新規 ファイルが作成されることがあります。 キー番号を指定すると、インデックスの削除と置き換えを行うことなく、 ファイルの複製とコピーが行われます。[NONE]を指定したときよりも 処理に時間がかかるため、この方法はインデックスを再構築したくない場 合にだけ選択してください。 4. 設定が終了したら、ファイル変換のプロセスを開始します。 [実行]メ ニューの[リビルド開始]をクリックすると、図 11-4 のような[リビ ルドの開始]ダイアログが表示されます。 MicroKernel データ ファイルの変換 11-7 図 11-4 [リビルドの開始]ダイアログ 5. 変換するファイルを選択し、 [開始]ボタンをクリックしてリビルド プ ロセスを開始します。 プロセスが完了すると、変換が正常に終了したかどうかを知らせるメッ セージ ダイアログが表示されます。必要な場合は変換の結果を確認す ることができます。 図 11-5 6. ファイルの変換が終了したら[閉じる]ボタンをクリックします。 7. 変換の結果を表示するには、 [実行]メニューの[ステータス ファイル の表示]をクリックします。図 11-5 のような REBUILD.LOG ファイル の内容が表示されます。 REBUILD.LOG ファイルの内容 11-8 Pervasive.SQL User’s Guide リビルド ユーティリティは、変換を試みたすべてのファイルに対する ステータスをログ ファイルに書き込みます。このログ ファイル(デ フォルトの設定で REBUILD.LOG)は ASCII テキスト ファイルで、リ ビルド ユーティリティを起動したディレクトリに保存されています。 このログ ファイルの内容を確認するには、 [実行]メニューの[ステー タスファイルの表示]をクリックします。それぞれのファイルについて リビルドの設定が一覧表示されます。 [エラー時続行]オプションで [いいえ]を選択していると、ログ ファイルにはエラーが発生した時点 までの情報が書き込まれます。リビルドが正常に終了しなかった場合 は、その原因を説明するエラー メッセージが表示されます。 コマンドライン リビルド ユーティリティ ここでは、NetWare 上で NLM として実行できるコマンドライン リビルド ユーティリティの使い方について説明します。 NetWare 上でのリビルド ユーティリティの実行 ➤ NetWare に対応したリビルド ユーティリティを実行するには 1. ワークステーションから RCONSOLE コマンドを実行するか、サーバの コンソールを表示します。 2. プロンプトに次のいずれかのコマンドを入力します。 LOAD BREBUILD [- オプション ...] ファイル または LOAD BREBUILD @ コマンドファイル 環境設定オプションの変更 ➤ NetWare に対応したリビルド ユーティリティの環境設定オプションを変更 するには オプションコマンドはユーティリティの環境設定オプションを指定しま す。オプション文字の前にはダッシュ(-)を入力します。ダッシュと オプション文字の間、およびオプション文字とその設定値の間にはス ペースを入力しないでください。オプション文字は大文字で入力しても 小文字で入力してもかまいません。 MicroKernel データ ファイルの変換 11-9 –B[ パス ] リビルド ファイルを格納するロケーションを指定します(デフォルト のロケーションはカレント ディレクトリです) 。このオプションを 使って異なるサーバを指定することもできます。ローカル サーバの場 合は、MicroKernel Database エンジンとメッセージ ルータがロードされ ていなければなりません。リモート サーバの場合は、MicroKernel Database エンジンと通信コンポーネントがロードされている必要があ ります。指定するパスにはワイルドカード文字を使用しないでくださ い。 -C エラーが発生しても次のファイルを対象とする処理を継続するように ユーティリティに指示します。MicroKernel データ ファイルに関連し ないエラーやその他のエラーが通知されますが、データ ファイルのリ ビルドは継続されます。 このオプションは、リビルド ファイルにワイルドカード文字を指定し た場合に役立ちます。 -D v6.0 より前のサプリメンタル インデックス(重複可能)を 6.x または 7.x のリンク重複インデックスに変換します(デフォルトの設定で、イ ンデックスは繰り返し重複可能キーとして保存されます) 。Btrieve 経 由でのみデータ ファイルにアクセスし、データ ファイルに比較的多数 の重複可能キーが含まれている場合は、このオプションを使って、Get Next および Get Previous オペレーションのパフォーマンスを向上する ことができます。 Scalable SQL を使ってデータ ファイルにアクセスしている場合は、-D オプションを使用しないでください。 -M0 | -M2 次のように変換の方法を指定します。 -M0 インデックスの削除や置き換えを行うことなくファイルの複製を作成 してコピーします。この方法は M2 よりも処理速度が遅くなりますが、 インデックスのリビルドを行わない場合に使用できます。 -M2 (デフォルトの設定)ファイルの複製を作成し、インデックスを削除し て新しいファイルにレコードをコピーした後で、インデックスをリビ ルドします。この方法は M0 よりも処理速度が速く、より小さなファ イルを作成できるため、できるかぎりこの方法を使ってください。 M2 を使用すると、レコードが元のファイルとは異なる物理順序で並 んでいる新規ファイルが作成されることがあります。 11-10 Pervasive.SQL User’s Guide -P[nnn] 新しいファイルのページ サイズ(バイト単位)を指定します。-P オプ ションにページ サイズを指定しない場合は、ファイルに最適なページ サイズが自動的に選択されます。 -P パラメータを指定しないと、オリジナルのサイズが有効でない場合 は、ページ サイズが変更されます。 たとえば、ページ サイズが 1,024 で、24 個のキーを含む v5.x ファイル があるとします。Btrieve 6.0 以降では、1,024 のページ サイズに対して 23 個までのキーしかサポートされていないため、このファイルに最適 なページ サイズが自動的に選択されて、情報メッセージが画面に表示 されます。 -K[nn] ファイルをリビルドするときにユーティリティが読み込みの基準とす るキーを指定します。このオプションを指定しないと、ファイルは物 理順序で読み込まれます。 -T 変換中にトランザクション トラッキング システム(TTS)ビットを保 存しません。このオプションを指定した場合、TTS ビットがセットさ れていると自動的にクリアされます。このオプションを指定しない場 合、オリジナル ファイルで TTS ビットがセットされていると、新しい ファイルを作成するときに TTS ビットがセットされます。 ファイルとコマンド ファイルは、次のように定義されます。 ファイル 変換するファイルのセットを指定します。ボリューム名を含むフル ディレクトリ名を指定します。指定するファイル名にワイルドカード 文字(* と ?)を使用することもできます。オリジナル ファイルの オーナ ネームとレベルが新しいファイルに適用されます。 @ コマンドファイル ユーティリティの実行に使用するコマンド ファイルを指定します。1 つのコマンド ファイルに複数の項目を指定できます。コマンド ファイ ルの各項目には、ユーティリティ オプション(もしあれば)と変換す るファイルのセットを指定し、その後に <end> または [end] を続けま す。変換するファイルを指定するときには、ボリューム名を含むフル ディレクトリ名を使用してください。ファイル名にワイルドカード文 字(* と ?)を使用することもできます。 次に、リビルド ユーティリティ コマンド ファイルの例を示します。 -C sys:¥mydir¥*.* <end> -C -P1024 dta:¥dir¥*.* <end> -M0 -K0 sys:¥ssql¥*.* <end> 次の例は、サーバ上のオリジナル ファイルとは異なるディレクトリに リビルド ファイルを作成します。 LOAD BREBUILD -Bsys:¥newfiles -C –P4096 sys:¥oldfiles¥*.mkd MicroKernel データ ファイルの変換 11-11 BREBUILD.LOG ファイルの表示 ファイルのリビルド後、ユーティリティのログ ファイルをチェックして、 変換中にエラーが発生していないことを確認します。リビルド ユーティリ ティによって作成されるログ ファイル(BREBUILD.LOG)は ASCII テキス ト ファイルで、SYS:¥SYSTEM ディレクトリに保存されています。通常のテ キスト エディタを使ってログ ファイルの内容を確認できます。 テンポラリ ファイルの削除 デフォルトの設定で、リビルド ユーティリティは変換を実行するディレク トリにテンポラリ ファイルを作成します。このため、リビルド ユーティリ ティの実行中は、そのディレクトリには元のファイルと新しいファイルの両 方を格納するために十分なディスク容量が必要です。対話型バージョンの [出力ディレクトリ]オプションまたはコマンドライン バージョンの /B オ プションを使用すると、これらのファイルを格納するために異なるディレク トリを指定できます。 通常、変換が終了するとテンポラリ ファイルは自動的に削除されます。た だし、停電などの重大な障害が発生した場合は、テンポラリ ファイルが削 除されないことがあります。このような場合は、 _T-xxxxx.TMP のような名前のファイルを検索して削除してください。 11-12 Pervasive.SQL User’s Guide Scalable SQL 3.01 ビューの 4.x への移行 ビュー変換ユーティリティとは、Scalable SQL v3.01 のビューを表示して、 それらのビューを Scalable SQL v4.x に移行することを可能にする、Win32 プ ラットフォームで実行する 2 つの Win32 プログラムのことです。これらの ユーティリティは c:¥pvsw¥bin ディレクトリに格納されており、Scalable SQL クライアントのインストールを選択した場合のみインストールされま す。ここでは、次のトピックについて説明します。 u 「ビュー変換ユーティリティの注意事項」 u 11-14 ページの「ビュー変換ユーティリティの起動」 u 11-14 ページの「ストアド ビュー定義のテキストへの変換」 ビュー変換ユーティリティの注意事項 Scalable SQL v4.x で使用するためには、既存のビューをすべて変換する必要 があります。このユーティリティは次の 2 つのプログラムから構成されてい ます。 VTEXT32.EXE ストアド ビューの定義を表示します。 VCONV32.EXE ストアド ビューの定義を Scalable SQL v4.0 データベー スで使用できるビューに変換します。 Scalable SQL エンジンは、Scalable SQL v3.01 でビューを作成したときの API レベルに対応したビューを作成します。このため、CREATE VIEW ステート メントを発行して、リレーショナル プリミティブを使用するアプリケー ションからビューを呼出そうとすると、エラーが発生します。ただし、 ビュー変換ユーティリティでビューをリレーショナル プリミティブ ビュー として格納した場合は、SQL ステートメント内でビュー名を使用できます。 辞書で定義されているビューのリストの生成 ビュー変換ユーティリティでは 1 度に 1 つのビューを処理します。辞書で定 義されているすべてのビューの一覧が必要な場合は、SQLScope を使って次 のステートメントを実行します。 SELECT DISTINCT Xv$Name FROM X$View MicroKernel データ ファイルの変換 11-13 Windows NT でのビュー変換ユーティリティの使い方 Windows NT では、コマンド ライン リクエストを処理するときにカレット (^)などの特殊文字が削除されます。このため、Windows NT の DOS セッ ションからビュー変換ユーティリティを実行し、ビュー名にカレット(^) などの特殊文字が含まれている場合は、VTEXT32 または VCONV32 ユー ティリティを実行するときにビュー名全体をダブル クォーテーション マー ク(")で囲む必要があります。また、ブランク置換文字に対するコマンド ライン設定(-B)もダブル クォーテーション マークで囲んでください。た とえば、ブランク置換文字がカレット(^)の場合、"-B^" と入力します。 ビュー変換ユーティリティの起動 ➤ NetWare の場合 1. 次のいずれかのコマンドを実行します。 VTEXT32 [ オプション ] < ビュー名 > または VCONV32 [ オプション ] < ビュー名 > ➤ Windows NT の場合 1. 次のいずれかのコマンドを実行します。 VTEXT32 [ オプション ] < ビュー名 > または VCONV32 [ オプション ] < ビュー名 > 注意 Windows NT 対応の Pervasive.SQL を使用している場合、このユーティリティは Windows NT サーバに接続されているワークステーションから実行する必要がありま す。 ストアド ビュー定義のテキストへの変換 VTEXT32 ユーティリティはストアド ビュー定義をテキスト文字列に変換 し、その文字列を画面に表示します。オプションを設定して、変換した文字 列をファイルに格納することもできます。1 度に複数のビューを表示するこ とはできません。VTEXT32 は v4.0 より前の Scalable SQL データベースとと もに動作します。 次に、VTEXT32 の構文を示します。 VTEXT32 [ オプション ] < ビュー名 > < ビュー名 > は、Scalable SQL データベースに含まれるビューの名前です。 11-14 Pervasive.SQL User’s Guide 次の表に、VTEXT32 で使用できる有効なオプションの一覧を示します。 表 11-3 VTEXT32 ユーティリティのオプション オプション 説明 -< タイプ > < タイプ > には、次のいずれかを指定できます。 0 SQL ビューは CREATE VIEW ステートメントを返し、プリミティブ ストアド ビューはプリミティブ レベルの情報のみを返します。これが デフォルトのオプションです。 1 SQL テキストを生成します。 2 プリミティブ レベルのストアド ビューに関する情報を生成します。 3 ストアド ビューのバージョン番号を返します。 4 ビューの列に関する情報を生成します。 -B<c> <c> には、ブランク置換文字を指定します。デフォルトの設定はカレット(^) です。 -O< 名前 > < 名前 > は出力ファイルの名前です。 -D< 名前 > < 名前 > は辞書ファイルを含むディレクトリの名前です。デフォルトの設定はカ レント ディレクトリです。 -P< 名前 > < 名前 > には、Master ユーザのパスワードを指定します。 -V< 名前 > < 名前 > は VIEW.DDF を含むディレクトリの名前です。デフォルトの設定はカレ ント ディレクトリです。 使用例 「COMP_ADDR_ORPHANS」という名前のビューを含むデータベースの場 合、次のコマンドを実行すると、出力がビューを定義する有効な SQL ス テートメントの形式でコンソールに表示されます。 VTEXT32 -1 -UMYNAME -PMYPASS COMP_ADDR_ORPHANS 実行結果 CREATE VIEW COMP_ADDR_ORPHANS AS SELECT Company_Id,Address_Id FROM Company A WHERE NOT EXISTS (SELECT * FROM ADDRESS B WHERE A.ADDRESS_ID = B.ADDRESS_ID) MicroKernel データ ファイルの変換 11-15 次のコマンドは、同じ実行結果をコンソールに表示するのではなく、 VTEXT32.OUT というファイルに格納します。 VTEXT32 -1 -UMYNAME -PMYPASS -OVTEXT32.OUT COMP_ADDR_ORPHANS ストアド ビュー定義の Scalable SQL 4.x への変換 VCONV32 ユーティリティはストアド ビュー定義を Scalable SQL 4.x の ビューに変換します。VCONV32 は 4.0 より前の Scalable SQL データベース とともに動作します。 VCONV32 は、主として 4.x より前の Scalable SQL データベースに含まれる ビューを Scalable SQL 4.x フォーマットに変換する目的で使用します。 VCONV32 を実行するためには、Windows NT または NetWare ファイル サー バで Scalable SQL 4.x と Btrieve が実行されていなければなりません。 次に、VCONV32 の構文を示します。 VCONV32 [ オプション ] < ビュー名 > < ビュー名 > は、Scalable SQL データベースに含まれるビューの名前です。 次の表に、VCONV32 で使用できる有効なオプションの一覧を示します。 表 11-4 VCONV32 ユーティリティのオプション オプション 説明 -< タイプ > < タイプ > には、次のいずれかを指定できます。 0 既存のビュー定義のフォーマットでビューを作成します。 1 SQL フォーマットのビューを作成します。 2 プリミティブ フォーマットのビューを生成します。 5 プリミティブ フォーマットのビューを生成しますが、ビューが SQL 機 能を必要とする場合は、SQL フォーマットで格納します。これがデ フォルトのオプションです。 -B<c> <c> には、ブランク置換文字を指定します。 -D< 名前 > < 名前 > は辞書ファイルを含むディレクトリの名前です。デフォルトの設定はカ レント ディレクトリです。 -F< パス > パスには、テーブルのデータ ファイルを検索するディレクトリを指定します。 -N< 名前 > < 名前 > には新しいビュー名を指定します。デフォルトの設定は元のビュー名で す。 11-16 Pervasive.SQL User’s Guide 表 11-4 VCONV32 ユーティリティのオプション 続き オプション 説明 -P< 名前 > < 名前 > には、Master ユーザのパスワードを指定します。 -V< 名前 > < 名前 > は VIEW.DDF を含むディレクトリの名前です。デフォルトの設定はカ レント ディレクトリです。 VCONV32 の実行 次に、VCONV32 を実行するための一般的な操作手順を示します。 1. 辞書ファイルをバックアップします。 2. VIEW.DDF ファイルを別のディレクトリにコピーし、その他の DDF を 含むディレクトリにある VIEW.DDF のコピーを削除します。 注意 オペレーションの実行中に、ビュー変換ユーティリティ VCONV32.EXE は、他の DDF ファイルが格納されているディレクトリに Scalable SQL v4.0 フォーマットの VIEW.DDF のコピーを新規作成します。 3. 次のコマンドを入力し(すべての内容を 1 行で入力します) 、ビュー変 換プロセスを実行します。 VCONV32 -V< 古い VIEW.DDF のディレクトリ > -D< 他の DDF ファイルのディレクトリ > -P< パスワード > < ビュー名 > 1 度に複数のビューを変換することはできません。複数のビューを変換する 場合は、データベースで定義されているそれぞれのビューに対して VCONV32 を起動するバッチ ファイルを作成し、その出力をテキスト ファ イルにリダイレクトします。こうすることで、実行結果を後でチェックし、 ビュー変換プロセスが正常に終了したかどうかを確認することができます。 たとえば、変換の対象となるビューとともに DDF とデータ ファイルを含む ディレクトリがカレント ディレクトリで、VIEW.DDF ファイルを SAVEVIEW というサブディレクトリにコピーし、次の行を含む DOVIEWS.BAT という名前のバッチ ファイルを用意している場合、 VCONV32 VCONV32 VCONV32 VCONV32 VCONV32 -VSAVEVIEW -VSAVEVIEW -VSAVEVIEW -VSAVEVIEW -VSAVEVIEW ADDRESS_ORPHANS COMP_ADDR_ORPHANS COMP_ADD_ORPHANS CONTACT_ORPHANS CONT_ADD_ORPHANS MicroKernel データ ファイルの変換 11-17 次のバッチ ファイルを実行すると、ビュー ADDRESS_ORPHANS、 COMP_ADDR_ORPHANS、COMP_ADD_ORPHANS、 CONTACT_ORPHANS、および CONT_ADD_ORPHANS が Scalable SQL 4.0 と互換性のあるビューに変換され、変換プロセスの出力が DOVIEWS.OUT ファイルに保存されます。 DOVIEWS >DOVIEWS.OUT ビューを変換することができず、VCONV ユーティリティからエラーが返さ れた場合は VTEXT32 ユーティリティを使って(オプション 0 または 1) 、 ビュー定義を表示します。これにより、VCONV ユーティリティで発生した エラーの原因を特定できることがあります。問題が解決されず、ビューの変 換に対するサポートが必要な場合は、パーベイシブ ソフトウェアのカスタ マーサポートまでお問い合わせください。 11-18 Pervasive.SQL User’s Guide 付録 A Smart Components の タイプ コード ここでは、Pervasive.SQL コンポーネントのタイプ コードを示します。 表 A-1 コンポーネントのタイプ コード コンポーネント グループ コンポーネント コンポーネント タイプ Abstract OS Services インタフェース DLL AIF Glue DLL SCM インタフェース DLL BIF Glue DLL BTR クライアント リクエスタ NSL リクエスタ Win9x サポート NSR BSPXCOM.NLM BSP SSPXCOM.NLM SSP BTCPCOM.NLM BIP STCPCOM.NLM SIP NWBSRVCM.NLM BSV NWSSRVCM.NLM SSV インタフェース DLL DIF Glue DLL DBN リソース DLL(英語) IRE API テストと分析 ATA 通信診断と分析 CDA インタフェース DLL MIF サーバ エンジン MSE サーバ エンジン リソース ファイル MSR ローカル システム ファイル MLC Btrieve 通信 データベース名 Install Scout MKDE Smart Components の タイプ コード A-1 表 A-1 コンポーネントのタイプ コード コンポーネント グループ コンポーネント コンポーネント タイプ Scalable SQL インタフェース DLL SIF Glue DLL SQL サーバ エンジン SSE ワークステーション エンジン SCE Scalable SQL Stub(NTSSQL.EXE など) SST Scalable SQL 変換/マスク DLL SFM Scalable SQL ローカル エンジン アクセス モジュール SLC Scalable SQL 16-32 サンキング DLL STK マネージャ UCM マネージャ リソース ファイル UCR システム ファイル UCS ユーザ インタフェース UUI リソース URC SQLScope SCP SQLScope BG エクスポート SPE SQLScope BG インポート SPI SQLScope BG Run All SPA SQLScope BG RI チェック SPC SQLScope BG RI リスト SPL SQLScope SQLUTIL DLL SPD SQLScope SQLUTIL リソース SPR RIUTIL(参照整合性) RMC SQLUTIL(Scalable SQL メンテナンス) SMC SQLUtil リソース SMR DDF Ease DDF DDF Ease リソース DLL DDR SmartScout SSC InstallScout ISC ユーザ カウント ユーティリティ A-2 Pervasive.SQL User’s Guide 表 A-1 コンポーネントのタイプ コード コンポーネント グループ コンポーネント コンポーネント タイプ ユーティリティ ユーティリティ サービス DLL(BTISC.DLL) SVD ユーティリティ サービス実行ファイル (BTISC.EXE) SVC ユーザ カウント初期化 UCI ユーザ カウント初期化リソース DLL UIR ユーザ カウント アドミニストレータ UCA ユーザ カウント アドミニストレータ リソース DLL UAR リビルド RBD リビルド リソース DLL RBR Btrieve 対話型メンテナンス BMG Btrieve 対話型メンテナンス リソース DLL BGR BUTIL(コマンドライン メンテナンス) BMC BUTIL リソース DLL BCR Btrieve ファンクション エグゼキュータ FEX Btrieve ファンクション エグゼキュータ リソース DLL FER モニタ MON モニタ リソース DLL MOR セットアップ SET セットアップ リソース DLL SER ユーティリティ リクエスタ インタフェース DLL UPI その他のクライアント コンポーネント クライアント リソース文字列 CRS 起動画面 EXE LGO Smart Components の タイプ コード A-3 A-4 Pervasive.SQL User’s Guide 付録 B ディスクリプション ファイル ディスクリプション ファイルとは、メンテナンス ユーティリティがデータ ファイルやインデックスの作成に使用するファイルおよびキー スペックの 記述を含んだ ASCII ファイルのことです。ユーザによっては、作成した データ ファイルに関する情報を格納するための媒体としてディスクリプ ション ファイルを利用することもあります。ディスクリプション ファイル は DDF、つまり Scalable SQL インタフェースや ODBC インタフェースで使 用するデータ辞書ファイルとは異なります。 ディスクリプション ファイルには、1 つ以上の要素が含まれます。1 つの要 素は、キーワード、等号(=) 、および値(キーワード、等号、値はスペー スなしで続きます)から構成されます。ディスクリプション ファイルの各 要素は、データ ファイルまたはキー スペックの特定の属性に対応していま す。 注意 ディスクリプション ファイルを使用する前に、データ圧縮、インデックス バランス といった Btrieve の基本的な考え方に習熟している必要があります。これらのトピッ クの詳細については、『Btrieve Programmer’s Guide』を参照してください。 この付録は、次のトピックについて説明しています。 u B-2 ページの「ディスクリプション ファイルの規則」 u B-4 ページの「ディスクリプション ファイルの例」 u B-6 ページの「ディスクリプション ファイルの要素」 ディスクリプション ファイル B-1 ディスクリプション ファイルの規則 ディスクリプション ファイルを作成するときは、次の規則に従ってくださ い。 u 要素は大文字または小文字で入力します。 u 次のように、それぞれの要素は分離文字(ブランク スペース、タブ、 またはキャリッジ リターン/ライン フィード)で区切ります。 record=4000 key=24 u ディスクリプション ファイルの要素を適切な順番で指定します。要素 を指定する順序については、表 B-1 を参照してください。 u すべての要素の依存関係を適切に指定します。たとえば、ディスクリプ ション ファイルの中で nullkey=allsegs を指定する場合は、 value= という要素に対する値も指定しておく必要があります。 u キー数要素に指定した値と同数のキーを定義します。たとえば、 key=12 と指定した場合は、ディスクリプション ファイルの中で 12 個 のキーを定義する必要があります。 u 複数のセグメントから構成されるキーの場合は、それぞれのキー セグ メントについて次の要素を定義する必要があります。 w キー ポジション w キー長 w 重複可能キー w 変更可能キー w キー タイプ 降順要素は、それぞれのセグメントについてオプション(省略可能)で す。 u ファイル内の任意のキーが ACS を使用する場合は、ACS ファイル名、カ ントリ ID とコード ページ ID のセット、または ISR テーブル名のいず れかを指定する必要があります。この情報は、キーの最後の要素(現在 のキーにのみ適用されます)またはディスクリプション ファイルの最 後の要素(データ ファイル全体に適用されます)として指定できます。 w それぞれのキーについて同時に複数の ACS を指定することはできま せん。また、ACS ファイル名、カントリ ID とコード ページ ID の セット、または ISR テーブル名のいずれかを指定する必要がありま す。同じファイル内のそれぞれのキーで、異なるタイプの ACS を使 用することができます。たとえば、キー 0 では ACS ファイル名を使 用し、キー 1 ではカントリ ID とコード ページ ID のセットを使用で きます。 B-2 Pervasive.SQL User’s Guide w 同じキーを構成する異なるセグメントで異なる ACS を使用すること はできません。 w ACS をディスクリプション ファイルの末尾に指定すると、その ACS はデフォルトの ACS として使用されます。つまり、特定のキーを対 象に alternate=y と指定し、そのキーに対する ACS ファイル名、 カントリ ID とコード ページ ID のセット、または ISR テーブル名を 特に指定しないと、ファイルの末尾に指定されている ACS ファイル 名、カントリ ID とコード ページ ID のセット、または ISR テーブル 名が自動的に使用されるという意味です。 w 新しいキーを作成しようとして、alternate=y と指定し、ACS ファ イル名、カントリ ID とコード ページ ID のセット、または ISR テー ブル名を省略すると、新しいキーは作成されません。 u ディスクリプション ファイルの要素がオプションの場合は、省略する ことができます。 u ディスクリプション ファイルにテキスト書式文字が含まれていないこ とを確認します。一部のワード プロセッサでは、テキスト ファイルに 書式文字を埋め込むことがあります。 ディスクリプション ファイル B-3 ディスクリプション ファイルの例 次に示すディスクリプション ファイルの例は、データ ファイルを記述して います。このデータ ファイルはページ サイズが 512 バイトで、2 つのキー を持っています。レコードの固定長部分の長さは 98 バイトです。このファ イルでは、可変長レコードの使用が許可されていますが、ブランク トラン ケーションは使用しません。 このファイルでは、データ圧縮機能を使用しており、可変長部割り当てテー ブル(VAT)の使用を許可し、さらに空きスペース スレッショルドが 20 パーセントに設定されています。Micro Kernel Database エンジンはファイル を作成するときに、100 ページ、つまり 51,200 バイトをあらかじめ割り当て ます。このファイルは、キー 0 とキー 1 という 2 つのキーを持ち、キー 0 は 2 つのセグメントから構成されるセグメント キーです。 図 B-1 では、両方のキーで同じ ACS ファイル名(UPPER.ALT)を使用して います。図 B-2 では、両方のキーで同じカントリ ID(-1)とコード ページ ID(-1)を使用しています。図 B-3 では、キー 0 とキー 1 で異なる ACS ファイル名を使用しています(それぞれ、LOWER.ALT と UPPER.ALT)。図 B-4 では、ロギングに使用するシステム定義のキーを除いて、このファイル はキーを持ちません。 図 B-1 ACS ファイル名を使用するディスクリプション ファイル B-4 Pervasive.SQL User’s Guide 図 B-2 ACS ID を使用するディスクリプション ファイル 図 B-3 キー セグメントに ACS ファイル名を使用するディスクリプション ファイル 図 B-4 ロギングにシステム定義のキーを使用するディスクリプション ファイル ディスクリプション ファイル B-5 ディスクリプション ファイルの要素 ディスクリプション ファイルの要素は特定の順序で指定する必要がありま す。表 B-1 に、ディスクリプション ファイル要素の一覧を指定する順序で 示します。この表では、それぞれの要素について必要なフォーマットと指定 可能な値の範囲を示します。 表 B-1 u アスタリスク(*)は、その要素が省略可能であることを示します。 u シャープ記号(#)は、その要素が MicroKernel の現在のバージョンには 適用されず、MicroKernel の以前のバージョンとの互換性を維持するた めだけに残されていることを示します。 u パーセント記号(%)は、その要素が MicroKernel の現在のバージョンに だけ適用されることを示します。 ディスクリプション ファイル要素の概要 要素 キーワードとフォーマット 範囲 コメント コメント ブロック * /*. . . . . . . . . . . . */ 0 - 5,120 バイト なし レコード長 record=nnnn 4 - 4,088 なし 可変長レコード variable=<y|n> 適用外 キー オンリー ファイルには適 用できません。 予約重複ポインタ * dupkey=<nnn> 0 - 119 リンク重複キーを追加しよう としているファイルにのみ適 用できます。 ブランク トランケー ション * truncate=<y|n> 適用外 データ圧縮を使用するファイ ルには適用できません。 データ圧縮 * compress=<y|n> 適用外 キー オンリー ファイルには適 用できません。 キー数 key=nnn 0 - 119 データ オンリー ファイルを作 成するには 0 を指定します。 ページ サイズ page=nnnn 512 - 4,096 512 の倍数でなければなりま せん。 ページ プリアロケー ション * allocation=nnnnn 1 - 65,535 なし 既存ファイルの置換 *# replace=<y|n> ファイル スペック情報 データのインクルード * data=<y|n> B-6 Pervasive.SQL User’s Guide 適用外 なし 適用外 キー オンリー ファイルを作成 するには n を指定します。重 複可能キーの使用を許可し、 同時にシステム定義キーを使 用するキー オンリー ファイル を作成することはできません。 表 B-1 ディスクリプション ファイル要素の概要 要素 キーワードとフォーマット 範囲 コメント 空きスペース スレッショルド * fthreshold=<5|10|20|30> 適用外 可変長レコードを含むファイ ルにのみ適用できます。デ フォルトは 5 です。 可変長部割り当て テーブル(VAT) huge=<y|n> # vats=<y|n> 適用外 可変長レコードを含むファイ ルにのみ適用できます。 インデックス バランス * balance=<y|n> 適用外 なし キー番号の使用 * usekeynum=<y|n> 適用外 キー番号要素とともに使用し ます。 1 sysdataonrecord=<n|loggable> 適用外 要素をまったく指定しないと、 MicroKernel の環境設定が使用 されます。キー オンリー ファ イルを作成する場合は、 MicroKernel の環境設定が使用 され、この要素は無視されま す。また、重複可能キーの使 用を許可し、同時にシステム 定義キーを使用するキー オン リー ファイルを作成すること はできません。 キー番号 * keynum=nnnn 0 - 118 ファイル内で重複してはいけ ません。また、昇順で指定し、 ファイルのページ サイズに対 して有効でなければなりませ ん。ファイルを作成するとき だけ適用されます。 キー ポジション position=nnnn 1 - 4,088 レコード長を超えることはで きません。 キー長 length=nnn キー タイプ キー タイプによる制限を越え による制限 てはいけません。バイナリ キーの場合、キー長は偶数で なければなりません。キー ポ ジションとキー長の合計値が ファイルのレコード長を超え ることはできません。 重複可能キー duplicates=<y|n> 適用外 重複可能キーの使用を許可し、 同時にシステム定義キーを使 用するキー オンリー ファイル を作成することはできません。 変更可能キー modifiable=<y|n> 適用外 なし システム データの 使用 *% キー スペック情報 ディスクリプション ファイル B-7 表 B-1 ディスクリプション ファイル要素の概要 要素 キーワードとフォーマット 範囲 コメント キー タイプ type= 有効な MKDE キー タイプ 適用外 名前全体を入力するか(float のように) 、名前の先頭 3 文字 を入力します(flo のように) 。 降順 * descending=<y|n> 適用外 なし alternate=<y|n> 適用外 大小文字を区別する STRING、 LSTRING、または ZSTRING 型のキーにのみ適用できます。 既存のファイルに追加のイン デックスを作成するとき、そ のインデックスでデータ ファ イル内の先頭の ACS 以外の ACS を使用する場合は、 caseinsensitive=y とともに使 用します。 大小文字無視 * caseinsensitive=<y|n> 適用外 ACS を使用しない STRING、 LSTRING、または ZSTRING 型のキーにのみ適用できます。 繰り返し重複 * repeatdup=<y|n> 適用外 キー オンリー ファイルを作成 する場合は、繰り返し重複 キーを使用します。この要素 を使用するときは、同時に duplicates=y を使用する必要が あります。 オルタネート コレー ティング シーケンス (ACS) ヌル キー * nullkey=<allsegs | n | anyseg |> 適用外 ヌル キー値 value=nn 16 進の 1 バ ヌル キー要素とともに使用し イト ます。 セグメント キー segment=<y|n> 適用外 name=sequenceFile または countryid=nnn および codepageid=nnn または isr=table name (%) 使用中のオ オルタネート コレーティング ペレーティ シーケンス(ACS)とともに ング システ 使用します。 ムで有効な パスまたは 値。あるい は -1 オルタネート コレー ティング シーケンス (ACS)ファイル名 / ID なし なし 1 システム キーが追加されると、レコードが長くなりすぎてファイルの既存のページ サイズに収まりきらなくなることが あります。このような場合は、ファイルのページ サイズが次に適切なサイズまで自動的に拡大されます。 B-8 Pervasive.SQL User’s Guide 用語集 この用語集には、Pervasive.SQL 製品のマニュアル全体で使用されている基 本用語を収録しています。 1 対 1 関係 ある行が別のテーブルに含まれる行の 1 つのインスタンスにのみ関係すると きに発生します。 1 対多関係 ある行が別のテーブルに含まれる多数の行に関係するときに発生します。 All 権 Scalable SQL のセキュリティ権の 1 つで、Select、Insert、Update、Delete、 Alter、References、および Create Table の各アクセス権を含みます。 Alter 権 Scalable SQL のセキュリティ権の 1 つ。Alter 権を持つユーザまたはユーザ のグループはテーブル定義を変更することができます。テーブル定義も参照 テーブル定義 してください。 API( (Application Programming interface) ) アプリケーション プログラミング インタフェース (API) を参照してくださ い。 ASCII 米国情報交換標準コード(American Standard Code for Information Interchange) の頭文字。ASCII は 8 ビットの情報コードで、コンピュータはこのコードを 使って文字、数値、制御コード、および句読記号をデジタル形式に変換しま す。 用語集 1 Btrieve MicroKernel のアーキテクチャに基づく統合的なナビゲーショナル データ ベース管理システム。Btrieve は、ハイパフォーマンスなデータ処理を実現 するように設計されており、プログラミングの生産性も向上します。 Btrieve Extended オペレーション 1 回の Btrieve 呼出しにより、複数のレコードを返したり挿入したりする Btrieve オペレーション(Get Next Extended、Insert Extended など)。 Btrieve オペレーション ファイルを操作するための特定の動作(Delete、Create、Get Equal など)。 Btrieve ファイル データ ファイルを参照してください。 ファイル Btrieve リクエスタ DOS、OS/2、Win16、または Win32 環境に対応し、クライアント マシンに 常駐して、Btrieve サーバ エンジンと Btrieve 呼出しを行うクライアント アプ リケーションとの間の通信を可能にするプログラム。 B ツリー データをすばやく検索するためのパスを提供する複数レベルあるいはツリー 構造からなるインデックス。B ツリーの各ブランチおよび終端でないノード には、一定の範囲のインデックス条件が含まれています。検索を行うとき、 MicroKernel は各ノードで評価を行い、検索範囲に該当する B ツリー内のパ スを選択します。このようにして、目的のデータが見つかるまで MicroKernel は B ツリー内のパスをたどります。MicroKernel では、インデッ クス全体をスキャンして要求された情報を見つける必要がないため、この方 法ではより高速で効率的な検索を実行することができます。 2 Pervasive.SQL User’s Guide Continuous オペレーション データ ファイルがオープンされて使用中であるとき、そのファイルのバッ クアップを可能にする MicroKernel の機能。MicroKernel はファイルをリー ドオンリー モードでオープンし、バックアップ ユーティリティがそのファ イルの静的なイメージにアクセスすることを許可します。MicroKernel では、 オリジナルファイルに加えられた変更はデルタ ファイル(差分ファイル) と呼ばれるテンポラリ ファイルに格納されます。バックアップが終了する と、デルタ ファイルに格納されている変更内容を使ってオリジナル ファイ ルが自動的に更新され、すべてのアプリケーションがデルタ ファイルに対 応するデータ ファイルをクローズすると、即座にこのデルタ ファイルは削 除されます。 Create Table 権 ユーザまたはユーザのグループによる新しいテーブルの作成を許可する Scalable SQL のセキュリティ権。 DBA データベース管理者(DBA) )を参照してください。 データベース管理者( DBMS データベース管理システム(DBMS) )を参照してください。 データベース管理システム( Delete 権 Scalable SQL のセキュリティ権の 1 つで、ユーザまたはユーザ グループが テーブルの行を削除することを許可します。 DLL ダイナミック リンク ライブラリ(DLL) )を参照してください。 ライブラリ( DOS DOS、PC-DOS、または MS-DOS オペレーティング システム。 Extended オペレーション Btrieve Extended オペレーションを参照してください。 オペレーション 用語集 3 Insert 権 Scalable SQL のセキュリティ権の 1 つで、ユーザまたはユーザ グループが テーブルに新しい行を追加することを許可します。 ISR インターナショナル ソート規則を参照してください。 ソート規則 Login 権 Scalable SQL のセキュリティ権の 1 つで、データ辞書にログインするために 必要となります。すべてのユーザは、データにアクセスする前に辞書にログ インする必要があります。 Master ユーザ セキュリティが有効になった後でも辞書に対するすべての権利を持つユー ザ。ユーザ名の Master では大文字と小文字が区別されます。 MicroKernel Database アーキテクチャ Pervasive Software のデータベース エンジンに採用されている独自のモジュ ラ フレームワーク。このアーキテクチャは、Btrieve や Scalable SQL などの アクセス モジュールから構成され、これらのモジュールは MicroKernel の中 にプラグインされます。このアーキテクチャを使用すると、異なるデータ アクセス方法を使用する複数のアプリケーションが同じデータを共有できる ようになります。 MicroKernel Database エンジン MicroKernel Database アーキテクチャの基礎。物理データの管理、データ キャッシング、トランザクション処理、データ整合性の実行を行う低レベル のデータベース機能を提供します。 NDS Novell Directory Services の頭文字。 4 Pervasive.SQL User’s Guide NetWare Loadable Module (NLM) NetWare 3.x または 4.x サーバ上で実行されるプログラム。サーバの動作中 に NLM のロードまたはアンロードを行うことができます。ロードされた NLM はオペレーティング システムの一部となり、Netware サービスに直接 アクセスします。 NLM NetWare Loadable Module (NLM) を参照してください。 Public グループ セキュリティが設定されている辞書にアクセスするすべてのユーザが持つセ キュリティ権の最小セットを指定するために使用する特殊なユーザ グルー プ。Public グループは削除できません。すべてのユーザは自動的に Public グ ループのメンバになり、このグループから削除することはできません。 References 権 Scalable SQL のセキュリティ権の 1 つで、ユーザまたはユーザのグループが テーブルの主キーを参照する外部キーを作成することを許可します。 RI 参照整合性(RI) )を参照してください。 参照整合性( Scalable SQL Pervasive Software のリレーショナル データベース製品。Scalable SQL を使用 すると、共有データ ファイルを扱うように設計されたアプリケーションを 実行することができます。 Select 権 Scalable SQL のセキュリティ権の 1 つで、ユーザまたはユーザのグループが テーブルを対象に情報のクエリを実行することを許可します。 SPX( (Sequenced Packet Exchange) ) ネットワーク転送をモニタして、配線が正常に行われているかどうかを確認 する Novell の通信プロトコル。SPX は Novell の IPX(Internetwork Packet Exchange)の上で実行されます。 用語集 5 SQL 構造化問い合わせ言語(SQL) )を参照してください。 構造化問い合わせ言語( SQL コマンド SQL ステートメントの先頭に指定するキーワード。たとえば、次の SQL ス テートメントでは、SELECT が SQL コマンドです。 SELECT * FROM Faculty SQL ステートメントも参照してください。 句、キーワード キーワード、および キーワード ステートメント SQL ステートメント SQL コマンド、必要な値、および必要な(あるいは省略可能な)句を含む 完全な Scalable SQL のリクエスト。句、キーワード SQL コマンド キーワード、および キーワード も参照してください。 SQL レベル関数 アプリケーションと MicorKernel との間の高レベル インタフェースとして動 作する開発レベル関数。SQL レベル関数を使用すると、アプリケーション は SQL ステートメントを使ってリレーショナル データベース システムの作 成、アクセス、および変更を行うことができます。SQL レベル関数は、C/ C++、BASIC、COBOL、または Pascal などの標準的なプログラミング言語 から呼出すことができます。SQL レベル関数の例としては、XQLLogin、 XQLCompile、XQLFetch などがあげられます。 TCP( (Transmission Control Protocol) ) パケット通信のために IP(Internet Protocol)を使用するコネクション指向の 通信プロトコル。 TTS トランザクション制御とトランザクション ) トランザクション制御 トランザクション トラッキング システム(TTS) システム( を参照してください。 Update 権 Scalable SQL のセキュリティ権の 1 つで、ユーザまたはユーザのグループが 特定の列またはテーブルの情報を更新することを許可します。 6 Pervasive.SQL User’s Guide アーカイブ ロギング オンになっていると、指定したデータ ファイルを変更するすべてのオペ レーションを記録する MicroKernel の機能。これらの変更はログ ファイルに 記録されます。システム障害が発生した場合、MicroKernel ではこのログ ファイルを使って、ロギングがオンになってからシステム障害が発生するま での間にデータ ファイルに加えられた変更をロール フォワード(復旧)し ます。 空きスペース スレッショルド データを既存の可変ページに追加するか、新しいページを作成するかを決定 するために MicroKernel が使用するメカニズム。空きスペース スレッショル ドを大きくすると、可変長レコードが複数のページにわたって断片化するの を抑えることはできますが、より多くのディスク容量が必要になります。ま た、MicroKernel は可変ページに圧縮レコード(たとえ固定長レコードでも) を格納します。 アクセス権 ユーザがテーブルや個別の列にアクセスできるかどうかを決定するセキュリ ティ上の権利。アクセス権には、Select、Update、Insert、Delete、Alter、 References、および All があります。 All 権、Alter 権、Delete 権、Insert 権、References 権、セキュリティ権 セキュリティ権、 セキュリティ権 Select 権、および Update 権も参照してください。 アクセス パス インデックス パスを参照してください。 パス アクセス モジュール 適切なデータ構造とアクセス テクニックが用意されている特定のデータ モ デルをインプリメントしたもの。アクセス モジュールは、アプリケーショ ン プログラムからリクエストを受け取り、MicroKernel を呼出してリクエス トされたコア データ オペレーションを実行します。 用語集 7 アクセラレイティド Btrieve 7.x では、ファイル オープン モードの 1 つで、ファイルを更新すると き、ノーマル モードに比べて応答時間を短縮します。ただし、アクセラレ イティド モードでファイルをオープンすると、MicroKernel のデータ リカバ リ機能を使用できなくなります。このため MicroKernel では、アクセラレイ ティド モードでオープンしたファイルに対するトランザクションの一貫性 保守やアトミシティは保証されません。 Btrieve 6.x を使用している場合、アクセラレイティド モードはノーマル モー ドと同じです。ただし、アクセラレイティド モードでデータ ファイルを オープンすると、ファイルにトランザクション フラグを付ける効果があり ません。 Btrieve 6.x ワークステーション エンジンを使用している場合、ファイルはシ ングル エンジン ファイル共有(SEFS)モードでオープンされます(暗黙ま たは明示的にその他のファイル共有モードが指定されているかどうかに関係 なく) 。アクセラレイティド モードでファイルをオープンすると、1 つの ワークステーション MicroKernel だけ(したがって、そのエンジンに関連付 けられているタスクだけ)がそのファイルにアクセスできるようになりま す。また、6.x のワークステーション MicroKernel は、ファイルの NetWare TTS(Transaction Tracking System)フラグを無視します。 6.0 より前の Btrieve の場合、このモードでファイルをオープンすると、エン ジンのデータ リカバリ機能を使用できなくなります。また一度アクセラレ イティド モードでファイルをオープンすると、その他のタスクもアクセラ レイティド モードでないとファイルをオープンできなくなってしまいます。 エクスクルーシブ、ファイル エクスクルーシブ ファイル オープン モード、ファイル共有 モード ファイル共有、ノーマル ファイル共有 ノーマル、 ノーマル リードオンリー、およびベリファイ ベリファイも参照してください。 リードオンリー ベリファイ 値 列の値を参照してください。 列の値 値の検証 検証を参照してください。 検証 アノーマリ(anomaly) ) アノーマリ( 不正な RI 定義。アノーマリな RI 定義をそのまま使用すると、更新、挿入、 または削除オペレーションを一貫して取り扱うことができなくなり、結果的 にデータの整合性が損なわれることになります。 8 Pervasive.SQL User’s Guide アプリケーション スプレッドシートや給与計算ソフトウェアなどのプログラムまたはプログラ ムのセットで、特定のタスクまたは関連するタスクのグループを実行しま す。また、ユーザの作業を支援するために書かれたプログラムもアプリケー ションに含まれます。タスクも参照してください。 タスク アプリケーション インタフェース アプリケーションからデータ ファイルへのアクセスを可能にする特定のプ ログラミング言語インタフェース(C や Pascal など)。 アプリケーション プログラミング インタフェース (API) アプリケーションがデータベースにアクセスしたり、システム レベルの ルーチンを初期化するために使用する関数のセット。API に対する特定のプ ログラミング言語インタフェース(C や Pascal など)。アプリケーション プ ログラムから MicroKernel ファイルへのアクセスを可能にするプログラム。 アンバウンド データベース 辞書ファイルがバインドされていないか、一部のファイルしかバインドされ ていないデータベース。アンバウンド データベースには名前を付けること も付けないこともできます。バウンド バウンド データベースとバウンド データベース バウンド ファイルも ファイル 参照してください。 暗黙ロック トランザクションに対して定義した分離レベルに従って、行、ページ、また はファイルが自動的にロックされること。並行制御、明示的レコード 並行制御 明示的レコード ロッ ク、分離レベル 分離レベル、およびトランザクション トランザクションも参照してください。 分離レベル トランザクション 使用するオペレーションとトランザクションのタイプに応じて、レコード、 ページ、またはファイルが自動的にロックされること。一般に、 MicroKernel の排他トランザクションではファイルがロックされ、並行トラ ンザクションではページまたはレコードがロックされます。並行トランザク ションと排他トランザクション ション 排他トランザクションも参照してください。 排他トランザクション 位置透過性 ユーザが物理位置を指定することなくデータベースにアクセスすることを可 能にするデータベースの機能。 用語集 9 一部セグメント ヌル キー属性の 1 つで、特定のレコードの任意のキー セグメントの値が指定さ れたヌル値と一致する場合に、インデックスからそのレコードを除外するよ うに MicroKernel に指示します。6.0 より前の Btrieve では、一部セグメント ヌル キーはヌル キーと呼ばれていました。ヌル キーと全セグメント キー 全セグメント ヌルも ヌル 参照してください。 インスクライブ Scalable SQL のストアド プロシージャ機能で使用 ストアド プロシージャのストアド プロシージャ するスクリプトの作成および実行を支援する開発技術。インスクライブで は、Visual Basic と互換性のある Softbridge Basic Language (SBL) が使用され ます。 インターナショナル ソート規則(ISR) ) ソート規則( データ ファイルに対する外部コレーション シーケンスを指定するための機 構。トランスレータで使用されます。 インターネットワーク 通信ブリッジによって接続されている 2 つまたはそれ以上の独立したネット ワーク。ブリッジの働きにより、それぞれのネットワークのファイル サー バは互いにデータをやり取りできるようになります。 インデックス 特定の順序でテーブルをソートし、特定の値の検索を最適化するために使用 される列または列の組み合せ。セグメント インデックスも参照してくださ インデックス い。 ファイルをソートするために MicroKernel が使用するキーまたはキーのグ ループ。キーも参照してください。 キー インデックス セグメント 複数の列で構成されるインデックスの中の 1 つの列。インデックスとセグメ インデックス セグメ ント インデックスも参照してください。 インデックス 10 Pervasive.SQL User’s Guide インデックス属性 インデックスに割り当てられ、データ辞書に格納されている属性。インデッ クス属性には、大小文字区別、変更可能、ヌル値インデックス、セグメン ト、ソート順序、重複不可などの属性があります。 大小文字区別、変更可能 大小文字区別 変更可能、ヌル値インデックス 変更可能 ヌル値インデックス、セグメント ヌル値インデックス セグメント , ソート順、お ソート順 よび重複不可 重複不可も参照してください。 重複不可 インデックス パス インデックスとして使用される列の値に基づいたテーブル内の行の論理的な ソート順序。 インデックス バランス あるインデックス ページがいっぱいになったときに同種のインデックス ページで使用可能なスペースを検索し、いっぱいになったページから使用可 能なスペースのあるページに値を振り分ける処理。 インデックス ページ ページを参照してください。 ページ ウェイト ロック 明示的レコード ロックの 1 つで、Scalable SQL と Btrieve では、リクエスト されたレコードに対するロックが確立されるまでタスクに制御を戻しませ ん。 Scalable SQL では、XQLFetch を呼出すときにロック バイアス値を指定して ウェイト ロックを設定します。 Btrieve では、オペレーション呼出しにロック バイアス値を指定してウェイ ト ロックを設定します。 明示的レコード ロックと ロック ノーウェイト ロックも参照してください。 ロック エイリアス 次のいずれかの方法でテーブルまたはビューに割り当てることのできる一時 的な名前。 u SELECT または DELETE ステートメントの FROM 句 u INSERT ステートメントの INTO 句 用語集 11 u UPDATE ステートメントのテーブル リスト 特定のテーブルまたはビューに対するエイリアスを定義すると、同じステー トメントの別の場所でそのエイリアスを使用し、そのテーブルまたはビュー に含まれる列名を指定することができます。 エクスクルーシブ ファイル オープン モードの 1 つ。データ ファイルをエクスクルーシブ モー ドでオープンしたユーザは、そのファイルにアクセスできる唯一のユーザに なります。アクセラレイティド、ファイル アクセラレイティド ファイル オープン モード、ノーマル モード ノーマル、 ノーマル リードオンリー、およびベリファイ ベリファイも参照してください。 リードオンリー ベリファイ エクステンション ファイル MicroKernel が拡張ファイルを作成するとき、ベース ファイルと論理的に連 結されている物理ファイル。MicroKernel では、ベース ファイルとエクステ ンション ファイルを 1 つの大きなファイルとして扱います。拡張ファイルも 拡張ファイル 参照してください。 演算子 制限句、条件、または式の一部。演算子には、論理演算子、条件演算子(こ の中には関係演算子と範囲演算子が含まれます) 、および式の演算子(この 中には算術演算子と文字列演算子が含まれます)があります。算術演算子、 算術演算子 論理演算子、条件演算子 文 論理演算子 条件演算子、式の演算子 条件演算子 式の演算子、範囲演算子 式の演算子 範囲演算子、関係演算子 範囲演算子 関係演算子、および文 関係演算子 字列演算子も参照してください。 字列演算子 オーナ ネーム ファイルのオーナ ネームを参照してください。 ネーム オーファン行 従属テーブルの中で、対応する親キー値を持たない外部キー値を含む行。 オープン モード ファイルレベルのロックを参照してください。 ファイルレベルのロック 12 Pervasive.SQL User’s Guide オブジェクト指向データ モデル データがオブジェクトとして表されるデータ アクセス方法。オブジェクト は、学生、教科、学年など、現実の実体に対応しています。これらのオブ ジェクトは、データそのものと、オブジェクトの作成や削除などのデータ機 能から構成されています。 オペランド 制限句、条件、式、またはスカラ関数に使用する入力値。コンテキストに よっては、直前のオペレーションの結果がオペランドになる場合もありま す。 オペランドは、オペレーションの対象となる値ともいえます。条件、式 制 条件 式、制 限句、およびスカラ関数 スカラ関数も参照してください。 限句 スカラ関数 オペレーション データ ファイルを操作する特定の動作(Delete、Create、Get Equal など) 。 アプリケーションが Btrieve 関数のいずれかを呼出すとき、1 つのオペレー ションが実行されます。 親行 親テーブルの中で、現在、外部キー値に一致する主キー値を持っている行。 従属行も参照してください。 従属行 親テーブル 参照整合性(RI)を含むデータベースで、外部キーによって参照される主 キーを含むテーブル。従属テーブルも参照してください。 従属テーブル オルタネート キー Scalable SQL では、主キーではない候補キー。このキーもテーブル内の行を 一意に識別します。 オルタネート コレーティング シーケンス 標準 ASCII コレーティング シーケンスとは異なる方法で文字列値をソート するために使用するソート シーケンス。オルタネート コレーティング シー ケンス(ACS)には、ロケール固有の ACS、ユーザ定義の ACS、あるいは ISR(International Sorting Rule)があります。コレーション テーブル、イン テーブル イン ターナショナル ソート規則(ISR) )も参照してください。 ソート規則( 用語集 13 カーソル Scalable SQL 関数呼出しを介して取得される識別子。カーソルは、実行する 特定のデータベース オペレーションを識別します。 DECLARE CURSOR ステートメントによって定義された名前付きの仮想 テーブル。このテーブルにより、SQL 経由でのデータの読み込みと書き込 みの制御が可能になります。 カーソル ID と ビューも参照してください。 ビュー カーソル ID カーソルを参照するための整数値。SQL レベル関数の XQLCursor を使って カーソル ID を割り当てることができます。カーソル と ビューも参照してく ビュー ださい。 カーソル安定性 Scalable SQL がトランザクション中にデータファイル全体をロックするので はなく、ファイルの一部 ( 行またはページ ) のみをロックする分離レベル。 その結果、ファイルの同時更新が可能になります。カーソル安定性は、 MicroKernel の並行トランザクション機能を使ってインプリメントされてい ます。並行制御、並行トランザクション 並行制御 並行トランザクション、エクスクルーシブ 並行トランザクション エクスクルーシブ、暗黙ロック エクスクルーシブ 暗黙ロック、 暗黙ロック およびトランザクション トランザクションも参照してください。 トランザクション カーソル トランザクション ネストされたトランザクションの一種。カーソル トランザクションを使用 すると、他のファイルをトランザクション制御に従属させることなく、目的 のファイルだけを選択的にトランザクションの対象に含めることができるよ うになります。カーソルトランザクションでは、ビューを分岐させ、同じ ファイルの異なるステージを同時に確認することができます。カーソルトラ ンザクションは、排他モードまたは並行モードで使用できます。 階層型データ モデル データベースにアクセスする方法の 1 つ。このモデルでは、データベースの データはツリー構造のセット ( 階層 ) として表わされます。また、このよう な構造を操作するため、ツリーを上下に移動して階層経路をたどるオペレー ションが用意されています。リレーショナル データ モデル とナビゲーショ ナビゲーショ ナル データ モデルも参照してください。 モデル 14 Pervasive.SQL User’s Guide 概念設計 データベースの要件を決定してモデル化するデータベース設計の第 1 段階。 開発レベル SQL レベル関数を参照してください。 レベル関数 外部キー 主キーを参照する列または列のグループ。外部キーは主キーと同じテーブル に存在することもあれば、異なるテーブルに存在することもあります。外部 キーは列の値としてヌルを含むことはできません。また、外部キーとなる列 のデータ型、長さ、およびソート順序は、主キー列と一致している必要があ ります。主キー と参照整合性( 参照整合性(RI) 参照整合性( )も参照してください。 外部クエリ サブクエリを含む SQL ステートメントのメイン クエリ。相関サブクエリと 相関サブクエリ サブクエリも参照してください。 サブクエリ 外部結合 結合を参照してください。 結合 拡張ファイル ファイルへのレコードの挿入などのオペレーションを処理するとき、 MicroKernel では拡張ファイルを作成することができます。これにより、 ファイルにページを追加して、オペレーティングシステムの制限を超えて ファイルサイズを拡張できるようになります。 カスケード 削除規則の形式の 1 つ。カスケード規則を適用すると、親となる行を削除す るとき、それに従属する行も同時に削除されます。削除規則も参照してくだ 削除規則 さい。 仮想テーブル 結合、集計、計算フィールドなどにより、行と列がベース テーブルの行と 列と 1 対 1 に対応していないビュー、またはそうした関係。 用語集 15 仮想列 計算列を参照してください。 計算列 可変長データ型 テーブル内の行によって異なるサイズを持つデータ型。固定長データ型を参 固定長データ型 照してください。 可変長レコード データ ファイルに含まれるレコードのうち、可変長部分と固定長部分を含 むもの。固定長部分のサイズは対象となるファイル内のすべてのレコードで 共通している必要がありますが、可変長部分のサイズはレコードごとに異な ります。その結果、可変長レコード全体のサイズもレコードごとに異なりま す。固定長レコードも参照してください。 固定長レコード 可変長部割り当てテーブル(VAT) ) 可変長部割り当てテーブル( Btrieve レコードの可変長部分へのポインタの配列。VAT はリンク リストと してインプリメントされます。 可変ページ ページを参照してください。 ページ 関係(リレーション) テーブルを参照してください。 テーブル 関係演算子 条件演算子の 1 つで、ある列の値を別の列の値または定数と比較します。関 係演算子には、より小さい(<)、より大きい(>) 、等しい(=) 、以下 (<=) 、以上(>=)、等しくない(!= または <>)の 6 つがあります。条件、条 条件 条 件演算子、および式 式も参照してください。 件演算子 16 Pervasive.SQL User’s Guide キー テーブルの参照整合性(RI)制約が定義されている列または列のグループ。 キーのタイプには、主キーと外部キーがあります。主キーとは、テーブル内 の各行を一意に識別する列または列のグループのことです。外部キーとは、 主キーを参照する列または列のグループのことです。外部キー、主キー 外部キー 主キー、お 主キー よび 参照整合性(RI) 参照整合性( )も参照してください。 オフセットと長さによって(つまり、レコード内での物理的な位置)によっ て記述されるバイトのグループ(または複数のグループ)で、データ値への ダイレクト アクセスを可能にします。また、キーを使用すると、データ ファイル内でのレコードのダイナミック ソートを行うこともできます。イン デックスとセグメント デックス セグメント キーも参照してください。 キー キーオンリー ファイル データ ページが存在しないデータ ファイル。つまり、すべてのレコードが インデックス ページに格納されています。 キー セグメント セグメント キーに含まれるバイトのグループの 1 つ。キーとセグメント キー セグメント キーも参照してください。 キー キー属性 キーに割り当てられている属性。キー属性には、オルタネート コレーティ ング シーケンス、大小文字区別、降順、重複不可、変更可能、繰り返し重 複、全セグメントヌル、一部セグメントヌル、セグメント、およびサプルメ ンタルなどがあります。大小文字区別も参照してください。 大小文字区別 キー タイプ データ型を参照してください。 データ型 キー バッファ 通常、キー番号パラメータによって識別されるキーの値を含む Btrieve 関数 のパラメータ。 キー番号 データ ファイルに含まれる特定のキーに関連付けられている識別子。 用語集 17 キーワード SQL 言語の一部である単語。マニュアルの中のキーワードはすべて大文字 で表記されていますが、実際に入力するときは大文字と小文字の区別はあり ません。句、SQL コマンド、および SQL ステートメントも参照してくださ コマンド ステートメント い。 キャッシュ 物理ディスクページ(またはデータのブロック)のイメージを格納するメモ リ内の領域。キャッシュを使用すると、物理的なディスク I/O リクエストの 回数が少なくなり、MicroKernel のパフォーマンスが向上します。 行 ビューに含まれる論理的に関連付けられた列のセット。たとえば、行には 1 つのテーブルの一部の列またはすべての列が含まれる場合があります。ま た、ビューを作成するために結合された複数のテーブルの列が含まれる場合 もあります。 行の制限 特定の列に対する条件を設定し、作業対象となる行の数を制限すること。た とえば、メーリング リストの行を制限して、特定のステータスの行だけを 取得することができます。 句 キーワード、値、句、および条件など、関連する項目のグループを含む SQL ステートメントの下位構造。たとえば次の SQL ステートメントの場 合、FROM 句には FROM というキーワードと、関連するテーブルまたは ビュー名に対応する値(Person)が含まれています。 SELECT * FROM Person SQL ステートメントには句が必要な場合と、そうでない場合があります。 たとえば、SELECT ステートメントには FROM 句が必要です。 通常、句は SQL コマンドの名前ではないキーワードから始まります。ただ し、SELECT ステートメント全体が、INSERT など、他の SQL ステートメン トの内部で句になることもあります。また、制限句はキーワードで始まるこ とはなく、SQL ステートメントの対象となるデータの検索条件を定義する 条件式が含まれます。 SQL ステートメントも参照し キーワード、制限句 コマンド、および キーワード 制限句、SQL 制限句 コマンド ステートメント てください。 18 Pervasive.SQL User’s Guide クエリ データベースに格納されている情報を要求すること。SQL では、SELECT ステートメントを使ってクエリを指定します。 クライアント 他のコンピュータ プロセスのサービスおよびリソースにアクセスするタス ク、あるいはコンピュータ プロセス。NetWare および Windows NT 環境の場 合、クライアントとは通常、サーバベースのアプリケーションにアクセスす るアプリケーションを指します。また、サーバベースのアプリケーションに アクセスする別のサーバベースのアプリケーションがクライアントになる場 合もあります。リクエスタも参照してください。 リクエスタ クライアント/サーバ構成 広く使用されているコンピュータ システムのアーキテクチャの 1 つ。この 構成では、サーバとして設計された複数のマシンが、クライアントとして設 計された多数のマシンから受信したリクエストを処理します。このモジュー ルは、サーバ上にある対応するモジュールとの間でデータのやり取りを行い ます。データを集中管理して共有するときには、クライアント/サーバ構成 が必要です。 繰り返し重複 重複するキー値をインデックスに格納するように MicroKernel に命令する キー属性。キー属性とリンク重複 キー属性 リンク重複も参照してください。 リンク重複 グループ ユーザ グループを参照してください。 グループ グループ集計関数 指定した列の値のセットに対して 1 つの値を計算するために使用する SQL 関数のグループの 1 つ。グループ集計関数には、AVG、COUNT、MIN、 MAX および SUM があります。グループ集計関数は、選択リストまたは HAVING 句の中で使えます。 用語集 19 計算列 ビューの中に作成される列のうち、ベース テーブルの定義に含まれないも の。計算列の値は定数の場合もあれば、ビューに含まれる他の列の値または スカラ関数の計算結果である場合もあります。計算列は選択リストの中で使 用できます。制限句の中で計算列を使用するとき、計算列は式として参照さ れます。式も参照してください。 結果セット クエリにより、1 つまたは複数のテーブルまたはビューから取得された行の セット。 結果テーブル 結果セットを参照してください。 結果セット 結合 2 つまたはそれ以上のテーブル間で実行されるリレーショナル データベース の基本的なオペレーションの 1 つで、対象となるテーブルの指定した列の値 を比較して、テーブルに含まれるデータが結合されます。結合には次のよう な種類があります。 u 等価結合。2 つの結合列が等しいときに実行される結合。 u 非等価結合。2 つの結合列を対象とした非等価比較に基づく結合。非等 価比較には、より小さい、より大きい、以下、および以上の 4 種類があ ります。 u ヌル結合。結合するテーブル(式の右辺)に対応する行が存在するかど うかに関係なく、もう一方のテーブル(式の左辺)からすべての行を取 得できるようにする結合。 u 直積結合。一方のテーブルの各行をもう一方のテーブルの各行に対して すべて組み合わせる結合。 u 自己結合。複数回にわたって FROM 句に同一テーブルの名前を指定する 結合。 テーブルおよびビュー ビューも参照してください。 テーブル ビュー 結合条件 2 つの異なるテーブルに含まれる列を比較する式。式、制限句 制限句、および制限 制限 制限句 条件を参照してください。 条件 20 Pervasive.SQL User’s Guide 現在の行 直前の XQLFetch オペレーションに対して Scalable SQL が返した最後の行。 先頭行、最終行 最終行、次の行 前の行も参照してください。 先頭行 最終行 次の行、および前の行 次の行 前の行 検証 データベースに追加したデータの妥当性をチェックする条件を指定する列属 性。Scalable SQL では、入力したデータが一定の最小値と最大値の間に入っ ているかどうか(範囲のチェック) 、指定されている文字で構成されている かどうか(文字の検証) 、または指定されている値のセットと一致するかど うか(値の検証)をチェックします。列属性も参照してください。 列属性 降順 降順でインデックスの照合を行うように指定する Scalable SQL のインデック ス属性。この属性は、CREATE TABLE と CREATE INDEX ステートメント、 および SELECT ステートメントの ORDER BY 句で使用します。インデック ス属性も参照してください。 ス属性 降順でキー値を並べることを指定する Btrieve のキー属性。キー属性も参照 キー属性 してください。 更新規則 従属テーブルに更新を加える方法を指定する参照制約。更新規則は常に制限 として働き、従属テーブルの行に対する外部キー値が適切な親テーブルに含 まれる主キーと等しくない場合に、MicroKernel がその行を更新できないよ うにします。 構造化問い合わせ言語(SQL) ) 構造化問い合わせ言語( データベースに格納されている情報を管理するために使用できるステートメ ントの代表的なセット。たとえば、これらのステートメントにより、データ の取得、挿入、更新、または削除を行うことができます。SQL ステートメ ントは次のグループに分類できます。 u データ管理 u データ制御 u データ定義 u データ処理 データ管理ステートメント、データ制御ステートメント データ管理ステートメント データ制御ステートメント、 データ制御ステートメント データ定義ステー トメント、およびデータ処理ステートメント データ処理ステートメントも参照してください。 トメント データ処理ステートメント 用語集 21 候補キー テーブル内の各行を一意に識別する列値(または列値の集合)を含む列また は列のグループ。RI 定義を含む表には、1 つまたは複数の候補キーがありま す。Scalable SQL の場合、すべての候補キーは重複がなく、非ヌル インデッ クスでなければなりません。主キー、オルタネート 主キー オルタネート キー、参照整合性( キー 参照整合性(RI) 参照整合性( ) も参照してください。 コールバック関数 プログラムのコード セグメント外部から呼出される関数。Windows 環境で 他のタスクを実行するためにかなりの時間を要すると判断される場合、 Scalable SQL または Btrieve のタスクでは、それぞれのエンジンを使って コールバック関数の定義と登録を行う必要があります。チェーン コールバッ クも参照してください。 固定長データ型 テーブル内のすべての行に、あらかじめ指定された一定の長さのデータを格 納するデータ型。可変長データ型も参照してください。 可変長データ型 固定長レコード 可変長部分を含まないレコード。可変長レコードも参照してください。 可変長レコード コマンド SQL コマンドを参照してください。 コマンド コマンド ファイル 一般的なオペレーションを実行する一連のコマンドを含んだユーザ定義の ファイル。 コミット トランザクション中にデータベースに加えたすべての変更を保存すること。 ロール バックとトランザクション バック トランザクションも参照してください。 トランザクション 22 Pervasive.SQL User’s Guide コレーション テーブル オルタネート コレーティング シーケンスに文字セットをマップし、文字列 のソート順序を変更するテーブル。オルタネート コレーティング シーケン スと文字セット 文字セットも参照してください。 文字セット サーバ ネットワーク上にあり、クライアント アプリケーションにサービスを提供 するコンピュータ。 サーバベース MicroKernel MicroKernel のサーバベース バージョン。MicroKernel Database エンジンも エンジン 参照してください。 サイクル あるテーブルの親テーブルが同時にそのテーブルの子テーブルにもなってい る参照パス。子孫、親テーブル 参照整合性(RI) 子孫 親テーブル、参照パス 親テーブル 参照パス、および参照整合性( 参照パス 参照整合性( )も参照 してください。 最終行 ビューに含まれる行の最下位のインデックス位置に基づいた絶対的な行位 置。ビューの先頭行と最終行は絶対的な位置で、カーソル ID に対する新し い SQL ステートメントをコンパイルするか、カーソル ID を解放するまで効 果を持ち続けます。最初に実行する XQLFetch オペレーションは、現在の ソート パスに基づいて、カーソルをビュー内の先頭または最終行に位置付 ける必要があります。現在の行、先頭行 ソート パ 現在の行 先頭行、次の行 先頭行 次の行、前の行 次の行 前の行、およびソート 前の行 スも参照してください。 作業の論理単位 トランザクションを参照してください。 トランザクション 削除規則 ユーザが親行を削除しようとしたときに、それらの従属行をどのように取り 扱うかを指定する参照制約。選択できる削除規則には、カスケードと制限と いう 2 つの形式があります。カスケードと制限 カスケード 制限も参照してください。 制限 用語集 23 サブクエリ SELECT、UPDATE、または DELETE ステートメントの WHERE 句の内部、 または SELECT ステートメントの HAVING 句の内部にある SELECT ステー トメント。サブクエリは、内部クエリ、ネストされたクエリと呼ばれること もあります。相関サブクエリと外部クエリ 相関サブクエリ 外部クエリも参照してください。 外部クエリ サプルメンタル インデックス Btrieve 5.x では、ファイルの作成後にそのファイルに追加されるインデック スのこと。5.x では、サプルメンタル インデックスは削除できますが、ファ イルの作成時に作成したインデックスは削除できません。Btrieve 6.0 以降で は、繰り返し重複可能なインデックスを指すようになりました。 サンキング サンキングとは 32 ビット コードの実行から 16 ビット コードの実行に移行 したり、逆に 16 ビット コードの実行から 32 ビット コードの実行に移行し たりすることです。このような移行を行うコードの部分はサンクと呼ばれま す。このサンクは一種のマッピング レイヤで、32 ビット コードと 16 ビッ ト コードが互いに情報をやり取りできるようにデータを変換します。サン クを使用すると、アプリケーションでは、メモリ モデルが異なることを認 識することなく、別のメモリ モデルの制御を使用できるようになります。 算術演算子 数値データ(数値定数または数値列のいずれか)を表す 2 つの式に適用でき る式演算子。算術演算子には、加算(+)、減算(-) 、乗算(*) 、除算(/) 、 整数による除算(//)、および剰余(%)の各演算子があります。 参照 主キーを参照している外部キー。外部キー、主キー 参照整合性 外部キー 主キー、および参照整合性 主キー )も参照してください。 (RI) 参照整合性(RI) 参照整合性( ) あるテーブルの列(または列のグループ)が別のテーブルの列(または列の グループ)を参照しているとき、これらの列が同期していることを保証する こと。バウンド データベースに対して RI を定義すると、MicroKernel では、 データ アクセスに使用する方法(Btrieve または Scalable SQL など)に関係 なく、すでに定義されているデータベースのセキュリティ、トリガ、および 参照整合性を確実に実行できるようになります。バウンド データベースも参 データベース 照してください。 24 Pervasive.SQL User’s Guide 参照制約 データベースに含まれるテーブル間の関係を定義する規則のセット。 参照パス 従属テーブルと親テーブルの間の参照で構成される特定のセット。参照整合 性(RI) )も参照してください。 性( シェアラ ロガーのログイン セッションを共有するタスク。ロガーのログイン セッ ションを共有するために、シェアラがログインする必要はありません。ただ し、シェアラも独自のログイン セッションを持つことができます。ロガーと ロガー セッションも参照してください。 セッション 式 制限句の条件を構成する要素、または選択リストに含まれる要素。次の項目 のいずれかが式となります。 u 定数値 u 列名(修飾または非修飾) u スカラ関数 u 上の項目を使った計算列 計算列、条件 選択リストも参照 計算列 条件、定数 条件 定数、列名 定数 列名、制限句 列名 制限句、スカラ関数 制限句 スカラ関数、および選択リスト スカラ関数 選択リスト してください。 式の演算子 2 つの式を結合して別の式を作成するための条件を構成する要素。式の演算 子には、算術演算子と文字列演算子があります。算術演算子、論理演算子 算術演算子 論理演算子、 論理演算子 条件、式 文字列演算子も参照してください。 条件 式、および文字列演算子 文字列演算子 自己結合 結合を参照してください。 結合 自己参照テーブル それ自体が自分の親テーブルになっているようなテーブル。つまり、自分自 身の主キーを参照する外部キーを含んでいるテーブル。親テーブルと参照整 親テーブル 参照整 合性(RI) 合性( )も参照してください。 用語集 25 辞書 データ辞書を参照してください。 データ辞書 辞書のロケーション データ辞書を含むディレクトリ。 辞書ファイル データ辞書ファイルを参照してください。 データ辞書ファイル 辞書名 テーブル、ビュー、インデックス、列などのデータベースの構成要素を識別 するため、データ辞書に格納されている名前。 システム カタログ データ辞書を参照してください。 データ辞書 システム定義のログ キー トランザクション ロギングを目的として、MicroKernel がファイルに追加す ることのできるキー。システム定義のログ キーは 8 バイトの長さの重複不 可能(一意)なキーです。セットアップ ユーティリティを使用すると、 ファイルの作成時にシステム定義のログ キーを含むシステム データを追加 するように、MicroKernel を設定することができます。MicroKernel が一意 (重複不可能)なキーを 1 つも含まないファイルのログを作成するにはシス テム キーが必要です。 システム データ ロギングを目的として、MicroKernel がファイルに追加することのできるバ イトのセット。システム データには、MicroKernel が個別のレコードを追跡 するために使用する重複不可能(一意)なキーが含まれています。 26 Pervasive.SQL User’s Guide システム テーブル データ辞書内にある、データベースの詳細な記述を含むテーブル。たとえ ば、これらのテーブルには、データ、テーブル、ビュー、システム セキュ リティ、および参照整合性(RI)に関する情報が含まれています。それぞれ のシステム テーブルは、1 つのデータ辞書ファイルに対応しています。デー タ辞書とデータ辞書ファイル タ辞書 データ辞書ファイルも参照してください。 データ辞書ファイル システム トランザクション パフォーマンスを向上させ、データ回復を支援するため、MicroKernel には、 トランザクションを行わない複数のオペレーションや排他または並行トラン ザクションを、システム トランザクションと呼ばれるオペレーションのグ ループにまとめる機能があります。システム障害が発生しない限り、システ ム トランザクションはクライアントからは見えません。ユーザ トランザク ション(排他または並行)とは異なり、ユーザはシステム トランザクショ ンを制御することができません。また、システム トランザクションを中止 することもできません。 注意 システム トランザクションと排他または並行トランザクションを混同しないでくださ い。「システム トランザクション」はデータの回復に関連する特殊な用語です。本書 で「トランザクション」という用語を使用する場合には、排他または並行トランザク ション(ユーザ トランザクションとも呼ばれます)を指すものとします。 子孫 参照パス上にある従属テーブル。子孫には、パス上のオリジナル親テーブル に対する 1 つまたは複数の参照が含まれます。従属テーブル、親テーブル 従属テーブル 親テーブル、 親テーブル および参照パス 参照パスも参照してください。 参照パス シブリング ネットワーク インターネットワーク内の同じノードから分岐した複数の同等なネットワー ク。 射影 テーブルから指定したリストを取り出すこと。列リストも参照してくださ 列リスト い。 用語集 27 シャドウ ページング データ ファイルで、現在のページを変更するのではなく、そのページのコ ピー(シャドウ ページと呼ばれます)を変更するプロセス。変更がコミッ トされるとシャドウ ページが現在のページになり、元のページは再利用で きる状態になります。ページ アロケーション テーブル(PAT) )も参照してく テーブル( ださい。 集計関数 SQL 関数のグループの 1 つで、指定した列の値のセットに対する 1 つの計 算結果を返すために使用します。集計関数には、AVG、COUNT、MIN、 MAX、および SUM があります。集計関数は、選択リストや HAVING 句の 中で使用することができます。 集計値の制限句 HAVING キーワードに続く制限句の一種。この制限句の中では、各条件の 先頭の式がグループ集計関数でなければなりません。また、第 2 の式は、定 数、代替変数、文字列リテラル、数値リテラル、またはサブクエリのいずれ かになります。集計値の制限句には複数の条件を指定できます。グループ集 計関数 と 制限句も参照してください。 制限句 集計列の値 グループ集計関数によって決定される列の値。この値は、テーブルから選択 した列の値のセットに基づいています。グループ集計関数も参照してくださ グループ集計関数 い。 修飾された列名 列修飾子が前に付いた列名。修飾された列名を使用すると、異なるテーブル で繰り返し使用される列名を区別することができます。列名と列修飾子 列名 列修飾子も参 列修飾子 照してください。 従属行 従属テーブルの中で、関連付けられた親行の対応する主キー値に従属した外 部キー値を持つ行。 従属テーブル 参照整合性(RI)を含むデータベースの中で、少なくとも 1 つの外部キーを 含んでいるテーブル。外部キーも参照してください。 外部キー 28 Pervasive.SQL User’s Guide 主キー あるテーブルの各行を重複なく識別するための列値(列値の集合)を含む列 または列のグループ。主キーは一意の非ヌル インデックスでなければなり ません。外部キー と参照整合性( 参照整合性(RI) 参照整合性( )も参照してください。 条件 条件演算子と 2 つの式から構成される制限句の要素。条件演算子は、2 つの 式を比較するための条件を定義します。論理演算子を使って、複数の条件を 結合することもできます。論理演算子、条件演算子 制限句も参 論理演算子 条件演算子、式 条件演算子 式、および制限句 制限句 照してください。 条件演算子 2 つの式を比較するための基準を定義する制限句の要素。条件演算子は、範 囲を表す演算子または関係演算子のいずれかです。範囲演算子と関係演算子 範囲演算子 関係演算子 も参照してください。 昇順 Scalable SQL では、インデックスに対するデフォルトのコレーティング シー ケンス。Btrieve では、キーに対するデフォルトのコレーティング シーケン ス。ソート順も参照してください。 ソート順 シングル エンジン ファイル共有(SEFS) ) ファイル共有( ファイル共有を参照してください。 ファイル共有 スーパバイザ ネットワーク、データベース、またはこれら両方の管理と保守を担当する人 物。スーパバイザはすべてのボリューム、ディレクトリ、およびファイルに 対するアクセス権を持ちます。 スカラ関数 SQL 関数のグループの 1 つ。スカラ関数を使用すると特定のデータ型を対 象に演算を実行することができます。たとえば、文字列の長さを取得した り、数値を丸めたり、日付または時刻の値を取得できます。スカラ関数は、 式として計算列を許容するステートメントの中に指定します。 用語集 29 スクリプト 直接またはアプリケーションの内部から実行できるルーチンを開発するため のプログラミング言語。たとえば、Scalable SQL のスクリプト言語は Visual Basic と互換性があります。 スケーラビリティ さまざまな機能を持つコンピューティング環境でオペレーションを実行する ことができる製品の機能。ソースコードの変更や再リンクを行うことなく、 ワークステーション オペレーションからクライアント/サーバ オペレー ションへの拡張を行うことができます。 ステートメント SQL ステートメントを参照してください。 ステートメント ストアド ビュー 後で行の取得を行うためにデータ辞書の中に定義が置かれているビュー。大 部分のステートメントでは、テーブル名の代わりにストアド ビューの名前 を使用することができます。 ストアド プロシージャ 1 つの SQL ステートメントを使って呼出すことのできる、論理的に関連し たプログラミング ステップのグループ。SQL ストアド プロシージャを呼出 すと、ホスト言語のプログラムと SQL エンジンとの間で内部的な通信を行 うことなく、プロシージャ全体が実行されます。 スレッド プログラムの実行を分割する単位。マルチ スレッディングも参照してくださ スレッディング い。 正規化 規則のセットを適用して、データベースを特定の正規形に変換するプロセ ス。 30 Pervasive.SQL User’s Guide 正規形 データベースがデータ構成に関する特定の基本的な規則に準拠しているかど うかを判断するための条件のセット。 制御列 行をグループ化する方法を指示するため GROUP BY 句の中で指定する列。 制御列に同じ値を含む行がグループ化されます。 制限 削除、挿入、または更新規則の形式。 u 削除制限規則は、親テーブルの行が別のテーブルに含まれる外部キーの 親行になっている場合に、その行が削除されないようにします。 u 挿入制限規則は、ある行に含まれる外部キー値が適切な親テーブルに含 まれる主キー値と等しくない場合に、その行が従属テーブルに追加され ないようにします。 u 更新制限規則は、従属テーブルの行に含まれる外部キー値が適切な親 テーブルに含まれる主キー値と等しくない場合に、その行が更新されな いようにします。 従属テーブルと親テーブル 従属テーブル 親テーブルも参照してください。 親テーブル 制限句 SQL ステートメントの一部で、SQL ステートメントの対象となるデータを 限定するために 1 つまたは複数の検索条件を定義します。制限句は、制限条 件または結合条件を定義します。制限句は次の場所で使うことができます。 u SELECT ステートメントまたは SELECT 句の WHERE または HAVING 句。 u UPDATE または DELETE ステートメントの WHERE 句 結合条件と制限条件 結合条件 制限条件も参照してください。 制限条件 制限条件 制限句の中で指定される条件で、列の値を参照する式を、定数または同じ テーブルに含まれる列の値を参照する別の式と比較します。式、結合条件 結合条件、 結合条件 および制限句 制限句も参照してください。 制限句 用語集 31 整合性制御 ファイルに含まれるデータが完全かつ正確であることを確認する方法。 Scalable SQL では、参照整合性、セキュリティ、およびトリガを使ってデー タ ファイルの整合性を保証します。一方、MicroKernel では、シャドウ ペー ジングと並行制御を使ってデータ ファイルの整合性を保証します。並行制 、セキュリティ 御、参照整合性( 参照整合性(RI) セキュリティ、シャドウ トリガ 参照整合性( ) セキュリティ シャドウ ページング、およびトリガ ページング も参照してください。 セーブポイント SQL トランザクションでは、セーブポイントと呼ばれるマーカを定義する ことができます。セーブポイントを使用すると、トランザクション内のセー ブポイント以降の変更を元に戻して最後のコミットをリクエストする前まで の変更を保存したり、トランザクション全体を中止することができます。 セキュリティ アクセスを制限することでデータベースを保護する方法。SQL ステートメ ントまたは Btrieve のオーナ ネームを使ってデータのセキュリティを定義す ることができます。たとえば、テーブルに含まれる特定の列だけを見ること ができるように設定できます。また、テーブルに含まれるすべての列を見る ことができても、それらを更新できないように設定することもできます。 セキュリティ グループ ユーザ グループを参照してください。 グループ セキュリティ権 データベースを対象にユーザが実行できるオペレーションを定義する権利。 Login および Create Table 権は、ユーザが辞書にログインできるかどうか、 またテーブルを作成できるかどうかを決定します。アクセス権は、ユーザが 辞書に含まれるテーブルにアクセスできるかどうかを決定します。アクセス 権には、Select、Update、Insert、Delete、Alter、References、および All があ ります。アクセス権、All 権、Alter 権、Create Table 権、Delete 権、Insert アクセス権 権、Login 権、References 権、Select 権、および Update 権も参照してく ださい。 32 Pervasive.SQL User’s Guide セグメント インデックスまたはキーがセグメント化されているかどうか(結合して 1 つ のインデックスまたはキーになる列のグループで構成されているかどうか) を示すインデックスまたはキー属性。インデックス、インデックス属性 インデックス インデックス属性、 インデックス属性 キー、キー属性 セグメント キーも参照 キー キー属性、セグメント キー属性 セグメント インデックス、およびセグメント インデックス キー してください。 セグメント インデックス 複数の列から構成されるインデックス。それぞれの列のデータ型は異なって いてもかまいません。また、テーブル内で隣接している必要もありません。 インデックスも参照してください。 インデックス セグメント キー オフセットと長さで記述されている複数のバイトのグループから構成される キー。キーのセグメントは異なる拡張キー タイプであってもかまいません。 また、レコード内で隣接している必要もありません。キーも参照してくださ キー い。 セッション あるタスクがデータベースにログインしている期間。複数回のログインを行 い、1 つのタスクが複数のログイン セッションを作成することができます。 また、そのタスクが別のタスクとログイン セッションを共有することもで きます。ロガーとシェアラ ロガー シェアラも参照してください。 シェアラ セッション ID Scalable SQL のログイン セッションを識別する整数値。この整数値は 0 から Scalable SQL が許可する同時ログイン セッションの最大値までの値です。 セッションも参照してください。 セッション セッション カーソル プロシージャの外部で定義する SQL カーソル。 セッション変数 ストアド プロシージャの外部で定義する SQL 変数。 用語集 33 設定 特定の用途に使用するため、コンピュータ システムのさまざまな部分をカ スタマイズすること。たとえば、セットアップ ユーティリティを使って、 オープン ファイルの数やトランザクション一貫性保守などの MicroKernel の オプションを設定することができます。 全セグメント ヌル キー属性の 1 つで、特定のレコードのすべてのキー セグメントの値が指定 されたヌル値と一致する場合にだけ、インデックスからそのレコードを除外 するように MicroKernel に指示します。6.0 より前の Btrieve では、全セグメ ント ヌル キーは単にマニュアル キーと呼ばれていました。ヌル キーと一部 キー 一部 セグメント ヌルも参照してください。 ヌル 選択項目 SELECT ステートメントが検索または計算する列、計算列、またはグループ 集計関数。 選択リスト 選択項目のリスト。選択項目も参照してください。 選択項目 先頭行 ビューに含まれる行の最上位インデックス ポジションに基づく絶対的な行 の位置。ビューの先頭行と最終行は絶対的なポジションで、カーソル ID に 対して新しい SQL ステートメントをコンパイルするか、カーソル ID を解放 するまでその効果を持続します。最初に実行する XQLFetch オペレーション は、現在のソートパスに基づいて、ビューの先頭行または最終行のいずれか にカーソルを配置する必要があります。現在の行、最終行 現在の行 最終行、次の行 最終行 次の行、前の 次の行 前の 行、およびソート ソート パスも参照してください。 パス 相関サブクエリ 外部クエリの FROM 句のテーブルを参照する、WHERE または HAVING 句 を含んだサブクエリ。外部クエリとサブクエリ 外部クエリ サブクエリも参照してください。 サブクエリ 相対パス データ ファイルを見つけるために、Scalable SQL や Btrieve がデータ ファイ ルのロケーションに追加する部分的なパス。データ ファイルのロケーション も参照してください。 34 Pervasive.SQL User’s Guide 挿入規則 従属テーブルへの行の挿入方法を指定する参照制約。挿入規則は常に制限と して働きます。追加しようとする行が親テーブルに含まれていない外部キー 値を持つ場合、その行を従属テーブルに追加することはできません。 ソート順 Scalable SQL がインデックス列の値をソートする方法を規定するインデック ス属性。デフォルトの設定で、Scalable SQL ではインデックス列の値を昇順 (小さなものから大きなものへ)にソートします。 Btrieve でいうソート順とは、MicroKernel がキー値をソートする方法を規定 するキー属性のことです。 インデックス属性とキー属性 インデックス属性 キー属性も参照してください。 キー属性 ソート順という用語は、ORDER BY 句を使ってビューをソートするときの 順序を指すこともあります。ビューは 1 つまたは複数の列によってソートで き、それらの列はインデックス列である場合もあれば、非インデックス列で ある場合もあります。たとえば、文字列を含む列を使ってビューを昇順に ソートすると、文字 A で始まる列の値を含む行がビューの先頭に現れます。 ソート パス ビューの並べ替えパス。これは、ORDER BY 句、また ORDER BY 句を指定 していない場合はオプティマイザによって決定されます。 ソート ファイル テンポラリ ソート ファイルを参照してください。 ファイル 属性 列属性 と インデックス属性を参照してください。 インデックス属性 用語集 35 対称マルチプロセッシング(SMP) ) 対称マルチプロセッシング( SMP システムは 1 台のコンピュータに搭載され、共通のアドレス空間を共 有する複数の CPU から構成されます。オペレーティング システムでは、そ れらのプロセッサごとにプロセスとスレッドを割り当てることができます。 通常、SMP システムは 2 つから 6 つの CPU で構成されています。 あるアプリケーションで SMP がサポートされていると、そのアプリケー ションでは複数のプロセッサを使用できるようになります。このためには、 アプリケーションがマルチスレッドに対応している必要があります。そうす れば、アプリケーションの異なるスレッドが別のプロセッサで実行できるよ うになります。 大小文字区別 ソートを行うときに英字の大文字と小文字を評価する方法を指定する Scalable SQL のインデックス属性。 ソートを行うときに英字の大文字と小文字を評価する方法を指定する Btrieve のキー属性。 インデックス属性とキー属性 インデックス属性 キー属性も参照してください。 キー属性 代替変数 SQL ステートメントを実行するとき、Scalable SQL に実際の値との置換を命 令する識別子。記号 @ が SQL ステートメント内の代替変数を表します。 ダイナミック リンク ライブラリ(DLL) ) ライブラリ( 関連するモジュールをコンパイル済みコードとして含むプログラム ライブ ラリ。実行時には、DLL 内の関数がアプリケーションに読み込まれます。 このプロセスをダイナミック リンクと呼びます。 ダイナミック リンク ルーチン OS/2 と Windows で、オペレーティング システムが必要に応じて(動的に) ロードし、自動的に終了するプログラム。 タスク アプリケーションのインスタンス。アプリケーションも参照してください。 アプリケーション 36 Pervasive.SQL User’s Guide 多対多関係 あるテーブルの多数の行が別のテーブルの多数の行に関係するときに発生し ます。 チェーン コールバック それぞれのコールバックが順に実行されるように複数のコールバック関数を リンクすること。1 つのタスクでは、必要に応じていくつでもコールバック を登録できますが、Scalable SQL と Btrieve は、そのタスクに登録された最 後のコールバックだけを認識します。このため、複数のコールバックをリン クする必要のあるタスクでは、カレント コールバックからプリビアス コー ルバックへの各呼出しをリンクする必要があります。コールバック関数も参 コールバック関数 照してください。 チャンク オフセットと長さによって指定されるレコードの任意の部分。Btrieve では、 レコード全体ではなく、非常に大きなレコードの一部を対象に更新および取 得を行うことができます。 重複可能 複数の行のインデックス列で、列の値が重複することを許可するインデック ス属性。インデックス属性も参照してください。 インデックス属性 ファイル内の複数のレコードが同じキー値を持つことを許可するキー属性。 キー属性も参照してください。 キー属性 重複キー データ ファイル内の複数のレコードを識別する単一のキー。このキーの定 義をすることにより、ファイル内の複数のレコードが同じキー値を持つこと ができることを指定します。 重複不可 複数の行が同じインデックス列の値を持つことができるかどうかを決定する インデックス属性。 複数のレコードが同じキー値を持つことができるかどうかを決定するキー属 性。 インデックス属性と インデックス属性 キー属性も参照してください。 キー属性 用語集 37 直積結合 結合を参照してください。 結合 次の行 現在のパスに基づいて、直前の XQLFetch オペレーションを実行したときに 返された行セットの次にある行。この XQLFetch オペレーションではオプ ション 0(Fetch Current)を除くすべての XQLFetch オプションを使用できま す。オプション 0 を使用すると、次に行う Fetch オペレーションによって取 得される次の行は、現在の行の直後に位置することになります。現在の行、 現在の行 先頭行、最終行 ソート パスも参照してください。 先頭行 最終行、前の行 最終行 前の行、およびソート 前の行 パス 定数 SQL ステートメントで指定する変化しない値。たとえば、3.14 などの数値 定数、$40.00 などの MONEY 定数、または George などの文字列定数を指定 することができます。 条件式を使って定数を別の値と比較したり、数値条件を別の値に追加するよ うに計算列を定義して、定数に算術演算子を適用したりすることができま す。リテラルも参照してください。 リテラル ディスクリプション ファイル Btrieve メンテナンス ユーティリティのオペレーションに必要な情報を含む シーケンシャル ファイル。 ディレクトリ ファイルを含むディスク構造。ディレクトリの中にさらにサブディレクトリ が含まれる場合もあります。 ディレクトリ スペック 情報の検索または格納場所をアプリケーションに指定するパス。サーバ名、 ボリューム名、ドライブ名、およびディレクトリのパスを指定します。 データ圧縮 繰り返される情報をよりコンパクトな形式でエンコードし、データが占有す る記憶容量を小さくする方法。MicroKernel では、データ圧縮を使って、適 切に設定されたファイルのディスク容量を小さくします。 38 Pervasive.SQL User’s Guide データオンリー ファイル キーを含まない ( このためインデックス ページのない ) データ ファイル。 データ型 Scalable SQL では、INTEGER、DATE、または DECIMAL などの、列に対す る内部フォーマット。データ型は列に含まれるデータの種類を指定します。 たとえば、DECIMAL 型の列には、小数点以下の桁数が固定した数値データ が格納されます。 データ管理ステートメント SQL ステートメントのグループの 1 つで、Scalable SQL のセッション変数を 指定するために使用します。これらの変数は、ブランク置換文字、分離レベ ル、ファイル オープン モード、およびファイルのオーナ ネームを定義しま す。データ制御ステートメント、データ定義ステートメント データ制御ステートメント データ定義ステートメント、データ処理ス データ定義ステートメント データ処理ス テートメント、およびセッション変数 セッション変数も参照してください。 テートメント セッション変数 データ辞書 データベースの完全な記述を含むテーブル(システム テーブルとも呼ばれ る)のセット。この記述の中には、テーブルおよび列の名前、データ型、列 属性、インデックス属性、参照制約、およびセキュリティ権が含まれます。 データ辞書はシステム カタログと呼ばれることもあります。システム テー ブルも参照してください。 ブル データ辞書ファイル システムテーブルに関連付けられている物理ファイル。Scalable SQL の場 合、データ辞書ファイルは .DDF という拡張子を持ち、MicroKernel と互換 性のある形式で格納されます。システム テーブルも参照してください。 テーブル データ修正ステートメント SQL ステートメントのグループの 1 つで、データの追加、変更、または削 除を行うために使用します。 用語集 39 データ処理ステートメント SQL ステートメントのグループの 1 つで、テーブル内のデータの取得、挿 入、更新、および削除、トランザクションの定義、ビューの作成と削除、さ らにストアド SQL ステートメントの作成、削除、および実行を行うために 使用します。データ管理ステートメント、データ制御ステートメント データ管理ステートメント データ制御ステートメント、およ データ制御ステートメント びデータ定義ステートメント データ定義ステートメントも参照してください。 データ定義ステートメント データ制御ステートメント SQL ステートメントのグループの 1 つで、データベースセキュリティのオ ン/オフの切り替え、ユーザやユーザグループの作成、あるいはセキュリ ティ権の付与と取り消しを行うために使用します。データ管理ステートメン ト、データ定義ステートメント データ定義ステートメント、データ処理ステートメント データ定義ステートメント データ処理ステートメント、セキュリ データ処理ステートメント セキュリ ティ、ユーザ ユーザ グループを参照してください。 ティ ユーザ、およびユーザ ユーザ グループ データ抽象 DBMS では、物理的なデータ構造とはまったく異なる形式で、アプリケー ションに対してデータを提供します。このデータを提示する形式がデータ抽 象と呼ばれ、DBMS のデータモデルを決定します。 データ定義ステートメント SQL ステートメントのグループの 1 つで、辞書とインデックスの作成と削 除、テーブルの作成、変更、および削除、さらに列属性の定義を行うために 使用します。データ管理ステートメント、データ制御ステートメント データ管理ステートメント データ制御ステートメント、およ データ制御ステートメント びデータ処理ステートメント データ処理ステートメントも参照してください。 データ処理ステートメント データ バッファ 実行するオペレーションに応じて、さまざまな情報を転送するために使用す る Btrieve 関数のパラメータ。データ バッファには、レコード全体、レコー ドの一部、あるいはファイル スペックなどが含まれます。 データ バッファ長 データ バッファ パラメータに格納するデータのサイズ、あるいは関数の正 常終了後にデータ バッファに返されるデータのサイズを指定する Scalable SQL または Btrieve 関数のパラメータ。 40 Pervasive.SQL User’s Guide データ ファイル 1 つのディスク上に格納されている関連するレコードの集合。データ ファイ ルは物理ファイル、MicroKernel データ ファイル、あるいは単にファイルと も呼ばれます。Scalable SQL の場合、データ ファイルはテーブルとして表示 されます。 MicroKernel が作成して使用するデータ ファイルでは、データがいくつかの 種類のページに格納されます。ページの種類としては、ヘッダ、データ、 キー、ページ アロケーション テーブル(PAT) 、および可変長部割り当て テーブル(VAT)があります。 データ ファイルのロケーション Scalable SQL と Btrieve がデータ ファイルを見つけるために使用するディレ クトリ パス。Scalable SQL と Btrieve は、それぞれデータファイルパスの中 にディレクトリパスの一覧を保持しています。ファイル名または相対パスを 指定すると、Scalable SQL と Btrieve では、データファイルパスに含まれる 適切なディレクトリパスの末尾にそのファイル名または相対パスを追加し て、目的のデータファイルを検索します。データ ファイル パスも参照して パス ください。 データ ファイル パス データ ファイルのロケーション(ディレクトリ パス)の一覧を含むパス。 データファイルを検索するとき、Scalable SQL と Btrieve では、データ ファ イル パスに含まれるディレクトリ パスのいずれかにデータ ファイルの名前 または相対パスが追加されます。データ ファイルを作成するときには、 データ ファイル パスに含まれる先頭のディレクトリ パスにデータ ファイル の名前または相対パスが追加されます。セットアップ ユーティリティで データベースに名前を付けるとき、あるいは XQLLogin 関数のパスを使って ログインを行うときに、データ ファイル パスを指定します。データ ファイ ルのロケーションも参照してください。 ルのロケーション データ ページ ページを参照してください。 ページ データベース 関連する問題についての情報を含む 1 つまたは複数のレコードあるいはファ イルのセット。 従業員データのような関連する情報の集合。リレーショナル データベースも データベース 参照してください。 用語集 41 データベース管理システム(DBMS) ) データベース管理システム( データベースのテーブルと関連するファイルを作成して操作するプログラ ム、またはプログラムのセット。 データベース管理者(DBA) ) データベース管理者( データベースの管理とユーザアクセス権の付与を担当する個人または部署。 データベース サーバ サーバ上で実行されるデータベース管理システム。データベースサーバは バック エンドの一種です。バック エンドとデータベース管理システム エンド データベース管理システム (DBMS) )も参照してください。 データベース名 データベースに対する論理名。この名前により、データベースが実際に保存 されている物理的位置を知らなくてもデータベースを参照できるようになり ます。Scalable SQL のセットアップユーティリティを使用すると、データ ベース名を管理することができます。 テーブル 行として書式設定されたデータの集合。テーブルの各行は列の 値から構成 されます。テーブル内の列の値を縦方向に集めて列が形成されます。さら に、それぞれの値には、収入、年収などの同じタイプの情報が含まれます。 それぞれの行には、テーブル内の他の行とまったく同数の項目と情報のタイ プが含まれます。テーブルには、ベース テーブル と ビュー テーブルの 2 種 類があります。ベース テーブル、列 列の値、行 ビューも参照して テーブル 列、列の値 列の値 行、およびビュー ビュー ください。 テーブル定義 データ辞書に格納されているテーブルの記述。データ辞書も参照してくださ データ辞書 い。 デッドロック 他のタスクがすでにロックしているファイル、ページ、またはレコードを対 象に、複数のタスクのいずれもがオペレーションの再試行を実行するときに 発生する状況。並行制御も参照してください。 並行制御 42 Pervasive.SQL User’s Guide デフォルト 特に何も指定しないとき、プログラムによって自動的に選択される値または オプション。たとえば、デフォルトのディレクトリとは現在作業中のディレ クトリのことです。 また、デフォルトは列のデータ型と矛盾しない列属性を指定するものでもあ ります。Scalable SQL では、特に他の値を指定しないと、デフォルトの値が 自動的に列に挿入されます。列属性も参照してください。 列属性 デフォルト マスク Scalable SQL が列のデータ型に合わせて定義している編集マスク。編集マス パーマネント マスク、およびテンポラリ テンポラリ マスクも参照してください。 ク、パーマネント マスク マスク テュープル(組) 行を参照してください。 デルタ ファイル(差分ファイル) Continuous オペレーションが開始されると、MicroKernel はオリジナルの各 データ ファイルに対応するテンポラリ データ ファイルを作成します。この テンポラリ ファイルをデルタ ファイルと呼びます。バックアップの実行中 にデータ ファイルに加えられた変更は、すべてこのデルタ ファイルに記録 されます。Continuous オペレーションも参照してください。 オペレーション テンポラリ ソート ファイル インデックスとして定義されていない列によってビューをソートする場合に Scalable SQL が構築する一時的なファイル。 テンポラリ ビュー 名前を付けず、データ辞書にも格納しないビュー。テンポラリ ビューを作 成するには、SELECT ステートメントを使用します。一方、ストアド ビューを定義するには、CREATE VIEW ステートメントの中で SELECT 句を 使用します。ビューも参照してください。 ビュー テンポラリ ファイル 時間のかかるタスクのパフォーマンスを向上させるための一時的なデータ ファイル。 用語集 43 テンポラリ マスク XQLFormat を使って列に対する新しいマスクを定義するか、同じカーソル ID を使って異なる SQL ステートメントをコンパイルするか、あるいはカー ソル ID を開放するまで効力のある一時的な編集マスク。テンポラリ マスク を作成するには、SELECT ステートメントで列名の直後に角カッコで囲んだ マスクを挿入するか、XQLFormat 関数を使用します。デフォルト マスク、 マスク 編集マスク、およびテンポラリ テンポラリ ビューも参照してください。 編集マスク ビュー 等価結合 結合を参照してください。 結合 トランザクション データの論理的な整合性を維持するため、まとめて特定の順序で実行される 必要のある関連するオペレーションのグループ。 トランザクション アトミシティ MicroKernel がユーザ トランザクションのすべてのオペレーションを完了す るという保証。MicroKernel がすべてのオペレーションを完了できない場合、 MicroKernel はすべてのオペレーションをロール バックします。その結果、 データ ファイルはそのトランザクションが開始される直前の状態に戻りま す。 トランザクション一貫性保守 クライアントがトランザクションを終了し、MicroKernel がクライアントに 正常終了のステータス コードを返す前に、MicroKernel によるトランザク ション ログへの書き込みの完了を保証すること。ユーザ トランザクション は必ずしもシステム トランザクションの最後の要素ではないため、システ ム障害が発生すると、End Transaction オペレーションに対して MicroKernel がステータス コード 0 をクライアントに返している場合でも、ユーザ トラ ンザクションがロール バックされる可能性があります。なお、アクセラレ イティド モードでオープンされたファイルに対するトランザクション一貫 性保守は保証されていません。 44 Pervasive.SQL User’s Guide トランザクション制御 並行制御の 1 つで、アプリケーションが Btrieve トランザクション中にオー プンまたはアクセスするファイル(またはファイルの変更ページ)をロック するように MicroKernel に命令します。このファイルはトランザクションが 終了するか中止されるまでロックされたままになります。ロックされた状態 でも、他のアプリケーションがこのファイルをオープンして読み込むことは できます。しかし、このファイルを対象に書き込みオペレーションやトラン ザクションを実行することはできません。 トランザクション トラッキング システム(TTS) ) システム( NetWare の障害対策システムの 1 つで、ネットワーク コンポーネントの障害 によって発生した不完全なトランザクションを取り消して、ファイルが破損 しないように保護します。6.0 より前の Btrieve では、TTS を使って NetWare サーバ上のデータ ファイルを保護していました。サーバでは TTS がアク ティブになっていて、データ ファイルにもトランザクション用のフラグが 設定されている必要がありました。 Btrieve for NetWare 6.0 以降では、TTS を使って若干異なる処理を行います。 ファイルの整合性を保証する必要があることを MicroKernel に通知すると き、アプリケーションはファイルにトランザクション用のフラグを設定する ことができます。しかし、MicroKernel では実際に TTS を使って整合性を保 証するわけではありません。というのも、TTS は並行トランザクションと 組み合わせて使用すると他の方法ほど高速ではないためです。その代わり、 MicroKernel が TTS フラグを検出すると、ページへの書き込みが時系列で実 行されるように指示します(Btrieve の復旧メカニズムが適切に動作するよ うに) 。 ワークステーション エンジンは TTS フラグを無視します。 トランザクション ログ MicroKernel がトランザクション一貫性保守を確実に実行するために使用す る、ログ セグメントとも呼ばれる 1 つまたは複数の物理ファイル。 トランスレーション ある文字セットの文字を別の文字セットの文字にマップすること。データ ベース エンジンでネイティブ文字セット以外の文字列をサポートするには トランスレートが必要です。 用語集 45 トリガ 特定のデータ ファイルに変更が加えられるたびに DBMS を対象に実行する 特定の動作を定義した辞書オブジェクト。たとえば、トリガを定義して、商 品の在庫量が一定数以下になったときにストアド プロシージャを呼出すこ とができます。 ドロップ アイテムを削除すること。たとえば、データ辞書からテーブル、ビュー、イ ンデックス、またはユーザ グループをドロップすることができます。 内部クエリ サブクエリを参照してください。 サブクエリ ナビゲーショナル データ モデル データ レコードの内部を上、下、左、右に移動するために使用するデータ アクセス方法。このモデルではダイレクト コントロールを行うことができ、 開発者は下層のデータ構造に関する知識に基づいてデータ アクセスを最適 化することができます。Btrieve はナビゲーショナル データベース エンジン です。階層型データ モデルとリレーショナル モデル リレーショナル データ モデルも参照してくだ モデル さい。 名前付きインデックス Scalable SQL で、CREATE INDEX コマンドを使って名前を付けたインデッ クス。名前付きインデックスは削除できますが、名前のないインデックス (CREATE TABLE ステートメント内で WITH INDEX 句を使って作成したイ ンデックス)を削除することはできません。 名前付きデータベース 論理名を使ったデータベース。名前付きデータベースを使用すると、ユーザ は実際のロケーションを知らなくても、そのデータベースを識別できるよう になります。データベースに名前を付けると、その名前は特定の辞書ディレ クトリ パスと 1 つまたは複数のデータ ファイル パスに関連付けられます。 データベース名を使って Scalable SQL にログインするとき、Scalable SQL で はそのパスを使って、データベースの辞書とデータ ファイルを検索します。 データベース名も参照してください。 データベース名 46 Pervasive.SQL User’s Guide ヌル 列の値が未知であること、あるいは列の値が使用できないことを表します。 ヌル キー ユーザ定義のヌル文字として使用できるキー列。ヌル キーを使用する場合、 レコードのキーの各バイトがヌル列の値と一致していると、MicroKernel は そのレコードをインデックスに入れません。 ユーザ定義のヌル文字として使用できるキー フィールド。MicroKernel では 2 種類のヌル キーを使用することができます。一部セグメント(Btrieve の 以前のバージョンではマニュアル キーと呼ばれていました)と全セグメン ト(Btrieve の以前のバージョンでは単にヌル キーと呼ばれていました)の 2 つです。 一部セグメント ヌル キーでは、あるレコードのいずれかのキー セグメント の値がヌル値と一致する場合、そのレコードをインデックスに入れません。 全セグメント ヌル キーでは、あるレコードのすべてのキー セグメントの値 がヌル値と一致する場合のみ、そのレコードをインデックスから除外しま す。 ヌル結合 結合を参照してください。 結合 ヌル値インデックス Scalable SQL では、あらかじめ定義されているヌル値を含む列をインデック スに入れるかどうかを決定するインデックス属性。インデックス属性も参照 インデックス属性 してください。 Btrieve では、あらかじめ定義されているヌル値を含むフィールドをイン デックスに入れるかどうかを決定するキー属性。キー属性も参照してくださ キー属性 い。 ネイティブ文字セット 特に設定しなくても、Scalable SQL によってサブミットまたは生成されるテ キストを表示するために使用される文字セット。この文字セットはシステム のホスト環境によって定義されます。 用語集 47 ネストされたクエリ サブクエリを参照してください。 サブクエリ ネストされたトランザクション トランザクションのタイプの 1 つで、複雑なトランザクションをより小さく 単純なサブトランザクションに分割することを可能にします。ネストされた トランザクションを使用すると、メイン トランザクションには影響を与え ることなくトランザクションのサブグループのコミットまたはアンドゥを行 うことにより、トランザクションで加えられた変更を部分的にロール バッ クすることができます。ネストされたトランザクションを使用できるのは、 排他または並行モードのいずれかのときです。 ネットワーク管理者 ユーザのコンピュータとネットワーク サーバとの間の通信リンクの維持に 責任を持っている人物または部署。 ノーウェイト ロック 明示的レコード ロックのタイプの 1 つで、MicroKernel が何らかの理由(た とえば、他のタスクがすでにそのレコードをロックしているため)でレコー ドをロックできない場合に制御をタスクに戻します。 Scalable SQL では、XQLFetch を呼出すときにロック バイアス値を指定して ノーウェイト ロックを設定します。 Btrieve では、Btrieve オペレーション コードにロック バイアス値を指定して ノーウェイト ロックを設定します。 明示的レコード ロックとウェイト ロック ウェイト ロックも参照してください。 ロック ノーマル デフォルトのファイル オープン モード。サーバ版の MicroKernel を使用し ている場合、ノーマル モードではデータ ファイルへの共有読み書きアクセ スが許可されます。ノーマル モードの場合、MicroKernel はデータ ファイル を更新するとき、その標準的な整合性処理を実行します。 v6.15 のワークステーション版 MicroKernel を使用する Windows 環境では、 共有ファイルがローカル ドライブに保存されている場合、ノーマル モード は、SEFS(シングル エンジン ファイル共有)モードと同じになります。 ローカル ドライブとは、物理的にローカル MicroKernel を実行するマシン上 に位置するドライブのことです。一方、共有ファイルがリモート ドライブ に保存されている場合、ノーマル モードは、6.15 のローカル MicroKernel を 48 Pervasive.SQL User’s Guide 使った MEFS(マルチエンジン ファイル共有)モードと同じになります。 NetWare サーバ上のドライブまたはピア マシン上のドライブ(ピアツーピア のネットワーク環境の場合)がリモート ドライブになります。 アクセラレイティド、エクスクルーシブ アクセラレイティド エクスクルーシブ、ファイル エクスクルーシブ ファイル オープン モード、ファ モード ファ イル共有、リードオンリー リードオンリー、およびベリファイ ベリファイも参照してください。 イル共有 リードオンリー ベリファイ パース SQL エンジンが渡された SQL ステートメントを分析し、その SQL ステート メントを実行するために必要な内部オペレーションを決定するために使用す るメカニズム。 パーマネント マスク 辞書に格納する編集マスクで、列のデータ定義の一部となります。パーマネ ント マスクを指定するには、SET MASK ステートメントを使用します。デ フォルト マスク、編集マスク テンポラリ マスクも参照してくださ マスク 編集マスク、およびテンポラリ 編集マスク マスク い。 排他的分離レベル Scalable SQL では、MicroKernel にトランザクション中のロック単位として データ ファイル全体を使用させる分離レベル。排他的分離レベルは、 Btrieve での排他トランザクションに相当します。並行制御、カーソル安定 並行制御 カーソル安定 性、エクスクルーシブ エクスクルーシブ、排他トランザクション トラン エクスクルーシブ 排他トランザクション、分離レベル 排他トランザクション 分離レベル、およびトラン 分離レベル ザクションも参照してください。 ザクション 排他トランザクション レコードの挿入、更新、または削除を行うとき、MicroKernel にファイル全 体をロックさせるトランザクション。タスクがトランザクションを終了する か、中止するまで、ファイルはロックされたままになります。並行トランザ クションと暗黙ロック クション 暗黙ロックも参照してください。 暗黙ロック バウンド データベース すべてのファイル(辞書ファイルとデータベース ファイルの両方)にデー タベース名を刻印する名前付きデータベース。バインドを行うことにより、 MicroKernel では、データ アクセスに使用する方法(Btrieve または Scalable SQL など)に関係なく、すでに定義されているデータベースのセキュリ ティ、トリガ、および参照整合性を確実に実行できるようになります。 用語集 49 バウンド ファイル 特定の名前付きデータベースに含まれる 1 つのテーブルに関連付けられてい るデータ ファイル。ファイルが次のいずれかの条件を満たすとき、Scalable SQL では、ファイルを自動的に名前付きデータベースにバインドします。 u バウンド データベースの一部である u トリガを含む u 外部キーを含む u 外部キーによって参照される主キーを含む Scalable SQL はただ 1 つのテーブルにバインドされた 1 つのバウンド ファイ ルを必要とします。つまり、データベースに含まれる他のテーブルまたは他 のデータベースがこのバウンド ファイルをバインドすることはできません。 パス ファイルまたはディレクトリを重複なく識別するコンポーネント。ローカル ファイルの場合、これらのコンポーネントにはドライブ名、ディレクトリ レベル、およびファイル名が含まれます。一方、クライアントからアクセス されるネットワーク ファイルの場合、これらのコンポーネントにはサーバ 名、ボリューム、ディレクトリ パス、およびファイル名が含まれます。 バック エンド 計算中心の処理を行い、ユーザ インタフェースを提供するフロント エンド の背後で動作するプログラム。たとえば、計算、通信サービス、またはデー タ管理に特化したバック エンドがあります。バック エンドはエンジンと呼 ばれることもあります。データベース サーバとフロント サーバ フロント エンドも参照して エンド ください。 パッシブ コントロール(パッシブ メソッド) 並行制御の 1 つで、実行するタスクはロックを実行しません。すでにフェッ チしてあるレコードを別のタスクが変更した場合、更新または削除オペレー ションを実行する前に、そのレコードを再度フェッチする必要があります。 並行制御も参照してください。 並行制御 バッファ データを一時的に保持するメモリ内の格納領域。 50 Pervasive.SQL User’s Guide パラメータ プログラム、ユーティリティ、または API が特定のオペレーションを実行 するために必要とする情報の項目。代替変数も参照してください。 代替変数 範囲 ある列に入力できる有効な値の範囲を定義する列属性。 範囲演算子 条件演算子の 1 つで、式の値を指定された値の範囲と比較します。SQL ス テートメントで使用する範囲演算子には、CONTAINS と IS NULL がありま す。条件、条件演算子 制限句も参照してください。 条件 条件演算子、式 条件演算子 式、および制限句 制限句 範囲のチェック 検証を参照してください。 検証 ピアツーピア ネットワーク あるマシンが別のマシンに保存されているファイルにアクセスできるように なります。複数のユーザが自分のマシンでアプリケーションを実行し、別の マシンに格納されているデータベースにアクセスできます。 非等価結合 結合を参照してください。 結合 非ヌル インデックス 列の値としてヌルを含まないインデックス。ヌルも参照してください。 ヌル ビュー 1 つまたは複数のテーブルから行と列を選択したもの。ビューでは、すべて のデータが 1 つのテーブル内に存在するかのように取り扱われます。ビュー に含まれる列は、同じテーブルの列であることもあれば、互いに結合された 異なるテーブルの列であることもあります。ビューは一度だけ使用するため に作成することもできますが、ビューに名前を付けてデータ辞書の中に保存 し、後で再使用することもできます。結合とテーブル 結合 テーブルも参照してください。 テーブル 用語集 51 表示マスク 編集マスクを参照してください。 編集マスク ファイル ディスクに格納されているレコードの集合。ファイルという語が物理的ファ イルを指す場合もあります。 ファイル オープン モード ファイルをオープンする方法で、対象となるファイルへのアクセスにさまざ まな制限を加えます。ファイルオープン モードには、アクセラレイティド、 エクスクルーシブ、ノーマル、リードオンリー、およびベリファイがありま す。アクセラレイティド、エクスクルーシブ アクセラレイティド エクスクルーシブ、ノーマル エクスクルーシブ ノーマル、リードオンリー ノーマル リードオンリー、 リードオンリー およびベリファイ ベリファイも参照してください。 ベリファイ ファイル共有 ファイル共有とは、複数のユーザまたはタスクが同一のファイルに対して同 時にオペレーションを実行できる機能のことです。ワークステーション エ ンジンの場合、MicroKernel によって 2 つのファイル共有モードが用意され ています。 u シングル エンジン ファイル共有(SEFS)モード。同一の MicroKernel 上 で実行されているユーザまたはタスクだけが共有ファイルに格納されて いる情報にアクセスして、それを処理することができます。異なる MicroKernel 上で実行されているユーザまたはタスクは共有ファイルに アクセスできません。 共有ファイルがローカル ドライブに保存されている場合、マシンの MicroKernel ではデフォルトの設定で SEFS モードを使用します(ロー カル ドライブは MicroKernel を実行するワークステーションに物理的に 接続されています )。 u マルチ エンジン ファイル共有(MEFS)モード。異なる MicroKernel 上 で実行されているユーザまたはタスクが共有ファイルにアクセスして、 その情報を処理することができます。 共有ファイルがリモート ドライブに保存されている場合、マシンの MicroKernel ではデフォルトの設定で MEFS モードを使用します(リ モート ドライブとは、ファイル サーバ上のドライブまたはピア ワーク ステーション上のドライブのいずれかです) 。 もちろん、これらのデフォルトの値とは異なるファイル共有を設定すること もできます。 52 Pervasive.SQL User’s Guide ファイル コントロール レコード(FCR) ) レコード( ファイル サイズやページ サイズなどのファイルに関する情報を含むデータ ファイル内のページ。データ ファイルの先頭の 2 ページは必ず FCR ページ になっています。 ファイル定義 データ辞書に格納されているデータ ファイルの記述。 ファイルのオーナ ネーム MicroKernel アプリケーションによる、不法なアクセスからデータ ファイル を保護するパスワード。Scalable SQL の場合は、CREATE TABLE ステート メントを使用するとき、ファイルにオーナ ネームを割り当てることができ ます。Btrieve では、メンテナンス ユーティリティを使用するか Set Owner オペレーションを実行して、オーナ ネームを割り当てることができます。 ファイル プリアロケーション プリアロケーションを参照してください。 プリアロケーション ファイルレベルのロック エクスクルーシブを参照してください。 エクスクルーシブ フィールド Btrieve では伝統的に、フィールドという用語は、キーのセグメントとして 指定されているレコードの部分を指すために使用されてきました。ただし一 般的な用語の使い方からすると、Btrieve のレコードにはフィールドは含ま れていません。 フィルタ Btrieve Extended オペレーションを使ってレコードを取得するときに使用で きる条件。 ブール型 True と False の論理値、あるいは任意の二値データを表すために使用できる データ型のグループ。ブール型には、BIT と LOGICAL が含まれます。 用語集 53 物理設計 データベース設計の第 3 段階で、データ型、インデックス、CREATE ス テートメント、およびテーブルに対応する物理ファイルのサイズを指定しま す。 プライマリ ファイル Btrieve Extend オペレーションを実行する前から存在していた分割ファイル のオリジナル部分。 ブラウズ 追加または変更を加えることなく、データベースの一部を対象にクエリを実 行することのできるオペレーション モード。ブラウズ アプリケーションを 使用すると、前後にスクロールを行い、実行するオペレーションを決定する 前にデータを検査することができます。 ブランク置換文字 Scalable SQL に名前を渡すとき、辞書名に含まれるブランクを置き換えるた めに使用する文字。ブランク置換文字を使用しないと、Scalable SQL では辞 書名のブランクと式の構成要素間のブランクを区別することができません。 有効なブランク置換文字には、カレット(^) 、アンダスコア(_) 、およびチ ルダ(~)があります。なお、これらいずれかの文字をブランク置換文字と して使用する場合は、名前の定義にその文字を使用しないでください。 ブランク トランケーション レコードをファイルに書き込むときに、レコードの可変長部分に含まれる末 尾のブランクを格納しないようにして、ファイルのディスク容量を節約する 方法。 ブランク フィル 文字列の末尾に一連のブランクを追加し、文字列を目的の長さにすること。 プリアロケーション ファイルを作成するときにそのファイルに一定のディスク領域を割り当てる ための方法。このディスク領域は将来ファイルを拡張するまで保持されま す。 54 Pervasive.SQL User’s Guide プリイメージング あるデータ ファイル ページのレコードを更新する前にそのページのイメー ジを格納すること。6.0 より前のエンジンでは、プリイメージングを使って、 ファイルの更新中にそのファイルが壊れたり、システム障害が発生した場合 の復旧機能を提供していました。 プロシージャ ストアド プロシージャを参照してください。 プロシージャ プロシージャ所有のカーソル ストアド プロシージャの内部で定義されている SQL カーソル。 プロシージャ所有の変数 ストアド プロシージャの内部で定義されている SQL 変数。 フロント エンド ユーザとバック エンド(またはエンジン)とのインタフェースを提供する アプリケーション。たとえば、SQLScope は Scalable SQL バック エンドに対 するフロント エンドの 1 つです。バック エンドも参照してください。 エンド フロント エンド結果セット クエリの結果を保持するクライアント コンピュータ上のキャッシュ。 分離レベル トランザクション中に他のタスクによってデータが変更されるのを防ぐため Scalable SQL が採用するデータ ロックのレベル。設定したロックレベルによ り、あるタスクのトランザクションが同じデータファイルのデータを読み込 んだり更新しようとする他のタスクの動作にどの程度の影響を与えることが できるかが決まります。Scalable SQL では、カーソル安定性(ロックの単位 は行またはページ)および排他(ロックの単位はファイル)という 2 つの分 離レベルがサポートされています。並行制御、カーソル安定性 並行制御 カーソル安定性、エクスク カーソル安定性 エクスク ルーシブ、暗黙ロック トランザクションも参照してください。 ルーシブ 暗黙ロック、およびトランザクション 暗黙ロック トランザクション 用語集 55 並行性 複数のタスクがデータの整合性を維持しながら同時に同じデータにアクセス することのできる機能。並行制御も参照してください。 並行制御 並行制御 2 つのタスクが同じデータに同時にアクセスしようとするとき、発生する可 能性のある衝突を解決するために MicroKernel が使用する方法。Scalable SQL の並行制御には、トランザクションに対する分離レベル、XQLFetch を 使った明示的なレコードのロック、およびパッシブ メソッドが用意されて います。一方、Btrieve の並行制御には、パッシブ メソッド、レコードの ロック、およびトランザクション制御が用意されています。明示的レコード ロック、分離レベル パッシブ コントロール(パッシブ メソッド) ロック 分離レベル、およびパッシブ 分離レベル も参照してください。 並行トランザクション 他のトランザクションが指定されたファイルの異なる部分で同時に実行され ることを可能にするトランザクションの一種。並行トランザクションでは、 そのトランザクション中にアクセスされるファイルの一部(レコードまたは ページ)だけがロックされます。このため、他のトランザクションはその ファイルの異なる部分に同時にアクセスできるようになります。排他トラン ザクションと暗黙ロック ザクション 暗黙ロックも参照してください。 暗黙ロック ページ データ ファイルの単位。ページは、MicroKernel がメモリとディスクとの間 を移動させる記憶データの最小単位です。1 つのページには、512 バイトの 倍数のデータが含まれています(ただし最大で 4,096 バイト) 。 MicroKernel では、次のタイプのページを使用します。 u u u データ ページ − 固定長レコード(あるいは、可変長レコードの固定長 部分)が含まれます。 インデックス ページ − キー値とその値に関連付けられたレコード (データ ページに格納されています)へのポインタが含まれます。 可変ページ − レコードの可変長部分が含まれます。 データ ファイル、固定長レコード 可変長レコードも参照し ファイル 固定長レコード、キー 固定長レコード キー、および可変長レコード キー 可変長レコード てください。 56 Pervasive.SQL User’s Guide ページ アロケーション テーブル(PAT) ) テーブル( ファイル内のページを追跡するために使用される MicroKernel の内部的なイ ンプリメンテーションの一部。シャドウ ページングも参照してください。 ページング ページレベルのロック データ ロックのレベルの 1 つで、MicroKernel はトランザクションの実行中 にファイル全体ではなく個別のデータ ページをロックします。これにより、 複数のユーザが 1 つのトランザクションで同じデータ ファイルの異なる ページにアクセスできるようになります。Scalable SQL では、ページレベル のロックはカーソル安定性と呼ばれます。エクスクルーシブ、トランザク エクスクルーシブ トランザク ションも参照してください。 ション ベース テーブル テーブルの実際の行と列を含む物理データ ファイルに直接関連付けられて いるテーブル。データが物理テーブルに関連付けられていることもあれば、 そうでないこともある仮想テーブルとは異なります。データ辞書とテーブル データ辞書 テーブル も参照してください。 ベース列 ベース テーブルのデータを含む列。 ヘッダ 辞書で定義されているものとは異なる列名を指定するための列属性。列ヘッ ダは CREATE VIEW ステートメントで指定します。列属性も参照してくださ 列属性 い。 ベリファイ ファイル オープン モードの 1 つで、オペレーティング システムにファイル に対するすべての書き込みオペレーションを確認させます。アクセラレイ ティド、エクスクルーシブ ティド エクスクルーシブ、ファイル エクスクルーシブ ファイル オープン モード、ノーマル モード ノーマル、および ノーマル リードオンリーも参照してください。 リードオンリー 変更可能 Scalable SQL が行を格納した後で、その行のインデックス列の値を変更できる かどうか決定するインデックス属性。インデックス属性も参照してください。 インデックス属性 Btrieve がレコードを格納した後で、そのレコードのキー値を変更できるか どうか決定するキー属性。キー属性も参照してください。 キー属性 用語集 57 編集マスク 列の表示形式を指定する列属性。たとえば、数値列に桁区切りのカンマを挿 入し、より読みやすい形式でデータを表示することができます。デフォルト マスク、列属性 テンポラリ マスクも参照し マスク 列属性、パーマネント 列属性 パーマネント マスク、およびテンポラリ マスク マスク てください。 編集マスク リテラル 編集マスクに埋め込むことのできる文字。この文字はデータの中に表示され ます。たとえば、電話番号の列にリテラル文字としてダッシュを挿入した り、数値の列に桁区切りのカンマを挿入することができます。 ポジショニング その前後にあるレコードの位置を基準とするレコードの相対的な位置。物理 ポジショニングと論理ポジショニングという 2 種類のポジショニングがあり ます。物理ポジショニングではデータ ファイルのデータ部分に含まれる 3 つの関連するレコードの位置を参照します。一方、論理ポジショニングでは データ ファイルのキー インデックスに含まれる 3 つの関連するレコードの 位置を参照します。 ポジション ブロック MicroKernel データ ファイルのハンドル。 前の行 現在のソート パスに基づいて、直前の XQLFetch オペレーションを実行した ときに返された行セットの前にある行。この XQLFetch オペレーションで は、オプション 0(Fetch Current)を除くすべての XQLFetch オプションを使 用できます。オプション 0 を使用して複数の行をフェッチすると、続く フェッチ オペレーションの前の行は、現在の行の直前に位置することにな ります。通常、オプション 0 は 1 行だけフェッチする場合に使用します。現 在の行、先頭行 ソート パスも参照してください。 在の行 先頭行、最終行 先頭行 最終行、次の行 最終行 次の行、およびソート 次の行 パス マスク 編集マスクを参照してください。 編集マスク 58 Pervasive.SQL User’s Guide マスク リテラル 編集マスク リテラルを参照してください。 リテラル マニュアル キー ヌル キーを参照してください。 キー マルチエンジン ファイル共有(MEFS) ) ファイル共有( ファイル共有を参照してください。 ファイル共有 マルチ スレッディング 複数のスレッドを同時またはインタリーブして実行すること。 マルチバイト文字セット 文字が任意のバイト数で表示される文字セット。 明示的トランザクション処理 トランザクション処理の 1 つで、START TRANSACTION ステートメントを 実行して、トランザクションの開始を指示する必要があります。このトラン ザクションを終了するには、COMMIT WORK または ROLLBACK WORK ス テートメントを実行します。 明示的レコード ロック Scalable SQL と Btrieve で使用される並行制御の 1 つで、XQLFetch 呼出しに ロック バイアス値を指定するか、Btrieve のオペレーション コードにロック リクエストを指定してレコードを明示的にロックします。明示的レコード ロックでは、更新および削除オペレーションを実行するためにレコードが ロックされますが、このオペレーションをロール バックすることはできま せん。これらのロックがトランザクション全体にわたって効果を持つことは ありません。並行制御と暗黙ロック 並行制御 暗黙ロックも参照してください。 暗黙ロック 文字セット コンピュータの画面表示に使用され、特定の言語(日本語やドイツ語など) をサポートするために必要な文字と記号のセット。 用語集 59 文字の検証 検証を参照してください。 検証 文字列 一連の文字(数値ではなく) 。または、文字列を格納するために使用される データ型のカテゴリ。 文字列演算子 固定長の文字列を含む列に適用して文字列を含む計算列を作成するための式 の演算子。文字列演算子には、追加(*)、スペースを削除して連結(+)、 およびスペースを含む連結(++)の 3 つがあります。式の演算子も参照して 式の演算子 ください。 有意ブランク 文字列の末尾に現れ、その文字列の表示、文字列長の決定、あるいは別の文 字列との比較を行うときに、Scalable SQL によってデータの一部として処理 されるブランク。 ユーザ セキュリティがインストールされているときに、データベースにログインす ることを許可された人物。セキュリティがインストールされていない場合 は、データベースにログインしたすべての人がユーザになります。 ユーザ グループ 1 つのセットとして定義されている複数のユーザ。あるグループに属する ユーザはすべて同じセキュリティ権を持ちます。 リードオンリー ファイル オープン モードの 1 つで、レコードの挿入、更新、または削除を 許可しません。アクセラレイティド、エクスクルーシブ アクセラレイティド エクスクルーシブ、ファイル エクスクルーシブ ファイル オープン モード、ノーマル ベリファイも参照してください。 モード ノーマル、およびベリファイ ノーマル ベリファイ リードオンリーのビュー 行の挿入、更新、削除のできないビュー。 60 Pervasive.SQL User’s Guide リクエスタ クライアント マシン上に常駐し、クライアント アプリケーションのリクエ ストをサーバベース エンジンに渡すプログラム。クライアント クライアントも参照して クライアント ください。 リクエスタ インタフェース クライアント マシン上に常駐し、アプリケーションのリクエストをリクエ スタに渡すプログラム。 リテラル リテラルとは、データ値を含む列または式を参照するのではなく、データ値 そのものを厳密に表現したものです。リテラルは、文字列リテラル (Jones) 、数値リテラル(123.4 または 6.02E+23)、日付リテラル(95/12/06) のように、有効なデータ型で分類できます。 編集マスク リテラルも参照してください。 リテラル リモート クライアント 2 つのクライアントが異なる MicroKernel 上で実行されている場合、これら は互いに対してリモート クライアントであるといいます。ひとつのクライ アントはいくつかのクライアント(同じ MicroKernel 上で実行されている) に対してローカルであると同時に、他のクライアント(異なる MicroKernel 上で実行されている)に対してはリモートとなりえます。 リレーショナル データベース テーブルのセットの中に体系的に組織されている関連付けられたデータ。 リレーショナル データベース管理システム(RDBMS) ) データベース管理システム( リレーショナル データベースを組織化し、それに対するアクセスを管理す るシステム。汎用的にデータの格納と検索を行うためのプログラム。 リレーショナル データ モデル データがテーブル、行、列の集合として表されるデータ アクセス方法。リ レーショナル モデルでは、開発者を下層のデータ構造から切り離し、デー タを単純なテーブルのフォーマットで提示します。ナビゲーショナル データ モデルと階層型データ モデル 階層型データ モデルも参照してください。 モデル 用語集 61 primitive) リレーショナル プリミティブ(relational ) プリミティブ( 低レベルな Scalable SQL API 関数のグループの 1 つで、データベース アプリ ケーションとデータ ファイルの間のリレーショナル リンクを確立します。 リレーショナル プリミティブを使用すると、C、BASIC、COBOL、Pascal な どの標準的なプログラミング言語から関数を呼出して、リレーショナル データベースのオペレーションを実行できるようになります。 リンク重複 重複可能キーの先頭レコードから抽出したキー値をインデックス ページに 格納するように MicroKernel に命令するキー属性。このキー属性が設定され ていると、キーに対する第 2 の重複値はインデックスページに格納されず、 MicroKernel は第 2 の重複キーへのポインタを先頭の重複キーのレコードの 末尾に配置します。同様に、第 3 の重複キーへのポインタを第 2 の重複キー のレコードの末尾に配置します。キー属性と繰り返し重複 キー属性 繰り返し重複も参照してくださ 繰り返し重複 い。 ルータ クライアント アプリケーションがデータベースまたはゲートウェイとデー タをやり取りするときに仲介をするプログラム。ルータにより、クライアン トとデータベースまたはゲートウェイとの論理的な接続が確立されます。こ の接続が確立されると、クライアント アプリケーションはルータを使って、 データベースまたはゲートウェイに SQL または Btrieve リクエストを送り、 またその結果を受け取ります。 例外テーブル 従属テーブルに対するすべてのオーファン行を含むテーブル レコード MicroKernel データ ファイルに含まれる論理的に関連するデータ項目のセッ ト。たとえば、1 つのレコードには、従業員の氏名、住所、電話番号、給与 などが含まれます。データ ファイルは複数のレコードから構成されます。 レコードのロック 並行制御の 1 つで、アプリケーションがファイル内でアクセスしているレ コードをロックできるようにします。他のユーザがそのレコードを読み込む ことはできますが、ロックを保持するアプリケーションが開放するまで、そ のレコードのロック、更新、または削除を行うことはできません。 62 Pervasive.SQL User’s Guide 列 Scalable SQL では、テーブルを構成する行の下位区分。列は、テーブルに含 まれる値の垂直方向の集合を定義します。特定の列に含まれる値はすべて同 じタイプの情報を表します。 列修飾子 列の名前とテーブルを明確に関連付けるベース テーブル名、ビュー名、あ るいはエイリアス。SQL ステートメントの中で列名が一意でないときには、 列修飾子が必要となります。 列属性 列に割り当てられ、データ辞書に格納されている属性。この中には、デフォ ルト値、編集マスク、ヘッダ、ヌル、および検証などの属性が含まれます。 デフォルト、編集マスク 検証も参照してください。 デフォルト 編集マスク、ヘッダ 編集マスク ヘッダ、ヌル ヘッダ ヌル、および検証 ヌル 検証 列の値 ある行を構成する列の一部に格納されている実際のデータ。列、行 行、および テーブルも参照してください。 テーブル 列名 テーブルまたはビューを作成するときに、テーブルまたはビューに含まれる 列に割り当てた名前。修飾された列名、テーブル ビューも参照して 修飾された列名 テーブル、およびビュー テーブル ビュー ください。 列リスト 列名の一覧。 連鎖削除(Delete-connected) ) 連鎖削除( 第 1 のテーブルの行を削除することにより第 2 のテーブルの行も削除される 場合、第 1 のテーブルには第 2 のテーブルに対する連鎖削除が設定されてい ます。テーブルが連鎖削除になっているかどうかは参照制約によって決定さ れます。 用語集 63 ローカル クライアント 2 つのクライアントが同じ MicroKernel 上で実行されている場合、これらは 互いに対してローカルクライアントであるといいます。あるクライアントが 存在すれば、それはいくつかのクライアント(同じ MicroKernel 上で実行さ れている)に対してローカルであると同時に、他のクライアント(異なる MicroKernel 上で実行されている)に対してリモートである場合があります。 ローダ 別のプログラムをメモリにロードするプログラム。 ロール イン Continuous オペレーション バックアップの間に、対応するテンポラリ ファ イルに加えられたすべての変更を、オリジナルのデータ ファイルに書き込 むこと。バックアップが完了すると、MicroKernel は加えられた変更を使っ てオリジナル ファイルを自動的に更新し、テンポラリ ファイルを削除しま す。Continuous オペレーションも参照してください。 オペレーション ロール バック トランザクションを中止して、トランザクション中にファイルに加えたすべ ての変更を元に戻すこと。その結果、データベースはトランザクションを開 始する前の状態に戻ります。コミットとトランザクション コミット トランザクションも参照してくださ トランザクション い。 ロール フォワード ロギングが開始されてからシステム障害が発生するまでの間にデータ ファ イルに加えられた変更を回復すること。アーカイブ ロギングも参照してくだ ロギング さい。 ロガー ログイン セッションで xShareSessionID 関数を呼出すタスク。 xShareSessionID により、タスクはそのログイン セッションに共有可能とい うフラグを立てることができます。セッションおよびシェアラ シェアラも参照してく セッション シェアラ ださい。 64 Pervasive.SQL User’s Guide ログイン データ辞書に接続する動作。セキュリティが設定されている場合、ログイン 時にユーザが識別され、適切なセキュリティ権が割り当てられます。ユーザ はタスク(アプリケーションのインスタンス)の使用時にログインします。 Scalable SQL では、あるタスクが複数のログインを持ったり、別のタスクの ログイン セッションを共有することができます。特定のタスク内でアク ティブにできるのは 1 つのログイン セッションだけです。このため、現在 のログイン セッションのために定義されているカーソルだけがアクティブ になります。Scalable SQL のセキュリティ権はデータ辞書にログインするた めに必要とされます。すべてのユーザはデータにアクセスする前に辞書にロ グインする必要があります。ロガー、セッション シェアラも参照し ロガー セッション、およびシェアラ セッション シェアラ てください。 ログイン ID ワークステーション上で実行される特定のアプリケーションを識別する重複 のない番号。Scalable SQL では、ログインする各アプリケーションに 1 つの ログイン ID を割り当てます。 ログイン セッション セッションを参照してください。 セッション ログ キー MicroKernel がトランザクション ロギングの対象となるファイルの各レコー ドを重複なく識別するために使用するキー。ファイルに一意なキー(重複可 能でないキー)が含まれていない場合、MicroKernel ではそのファイルをロ グで追跡することができません。セットアップ ユーティリティを使用して、 ファイルの作成時に一意なシステム定義のログ キーをそのファイルに追加 するように、MicroKernel の環境を設定することができます。 ログ セグメント MicroKernel トランザクション ログの一部を含むファイル。ログ セグメント には必ず .LOG という拡張子が付きます。MicroKernel のログ セグメントに は、00000001.LOG、00000002.LOG、のように、8 桁の 16 進数を使った連続 する番号がファイル名として使用されます。 用語集 65 ロック 他のタスクが現在ロックしているデータを変更できないようにするメカニズ ム。並行制御、明示的レコード 並行制御 明示的レコード ロック、暗黙ロック ロック 暗黙ロック、分離レベル 暗黙ロック 分離レベル、ノーウェ 分離レベル ノーウェ イト ロック、およびウェイト ウェイト ロックも参照してください。 ロック ロック ロック単位 トランザクションが完了するまで Scalable SQL が他のタスクからブロックす るデータの量。Scalable SQL では、ロックを使って、現在処理中のデータが 他のタスクによって変更されないようにできます。カーソル安定性、エクス カーソル安定性 エクス クルーシブ、分離レベル トランザクションも参照してください。 クルーシブ 分離レベル、およびトランザクション 分離レベル トランザクション 論理設計 データベース設計の第 2 段階で、概念設計で明らかになった必要条件に一致 するリレーショナル モデルに基づいて、テーブル、列、およびキーを作成 します。 論理演算子 論理条件を指定する演算子。論理演算子には、NOT、AND、および OR が 含まれます。条件も参照してください。 条件 ワークステーション MicroKernel スタンドアロン エンジンとして実行される MicroKernel のバージョン。すべ ての処理はワークステーション上で実行され、すべてのファイルへのアクセ スはオペレーティング システムの呼出しを経由します。オペレーティング システムの呼出しはローカルに実行されるか、サーバにリダイレクトされま す。Btrieve とサーバベース サーバベース MicroKernel も参照してください。 66 Pervasive.SQL User’s Guide 索引 コマンド ファイル コマンド フォーマット システム障害後のデータの回復 データのインポートとエクスポート データ ファイルの作成と修正 データベースのバックアップ A ASCII データのインポート ASCII ファイル フォーマット 7-23 7-23, 8-10, 8-16 B BLOAD コマンド [BROUTER 通信バッファサイズ] [BROUTER のロード] Btrieve インタフェース モジュールの バージョン表示 Btrieve エンジンのアンロード Btrieve オペレーションのトレース Btrieve コマンド ライン メンテナンス ユーティリティ(BUTIL) Btrieve 通信マネージャのオプション NetWare のみの設定 [SAP の使用] [受信パケットサイズ] サーバ通信環境設定 [サポート プロトコル] [セッション数] [通信スレッド数] [通信バッファサイズ] [リモート読込みバッファサイズ] [リモート リクエストの受付] Btrieve メンテナンス ユーティリティ Btrieve リクエスタのオプション クライアント環境設定 [スプラッシュスクリーン] BUTIL CLONE コマンド CLROWNER コマンド COPY コマンド CREATE コマンド DROP コマンド ENDBU コマンド INDEX コマンド LOAD コマンド RECOVER コマンド ROLLFWD コマンド SAVE コマンド SETOWNER コマンド SINDEX コマンド STARTBU コマンド STAT コマンド STOP コマンド VER コマンド 概要 コマンド構文の表示 8-11 3-57 3-56 7-67 7-67 3-54 7-31 3-58 3-61 3-60 3-59 3-58 3-59 3-58 3-60 3-59 7-4 3-32 7-45 7-46 7-37 7-47 7-48 7-57 7-50 7-38 7-40 7-61 7-41 7-51 7-52 7-55 7-64 7-67 7-67 7-31 7-32 7-34 7-33 7-58 7-36 7-44 7-54 C CLONE コマンド CLROWNER コマンド Communications リクエスタの設定 [TCP/IP 接続タイムアウト] [サポート プロトコル] [ランタイム サーバ サポート] Continuous オペレーション COPY コマンド BUTIL SQLUTIL CREATE コマンド 7-45 7-46 3-35 3-35 3-36 7-54, 8-18 7-37 8-11 7-47 D DBNames インタフェースのオプション アクセス制御 [Scalable SQL サーバ] [代替 Infobase] [トランスポート] [名前付きパイプ読込みタイムアウト] DDF DDF Ease 既存の Btrieve ファイルに対応する DDF の作成 起動する リレーショナル データベースの作成 DROP コマンド 3-29 3-30 3-29 3-30 3-31 4-1 4-2 4-7 4-5 4-18 7-48 E ENDBU コマンド BUTIL SQLUTIL 7-57 8-19 I INDEX コマンド 7-50 L LOAD コマンド BUTIL SQLUTIL 7-38 8-13 索引 1 M MicroKernel Database Engine のオプション Btrieve オペレーションのトレース [オペレーションのトレース] [キーバッファのバイト数] [データ バッファのバイト数] [トレースするオペレーションの選択] [トレース ファイル] NetWare のみの設定 [BROUTER 通信バッファサイズ] [BROUTER のロード] [Runtime サーバ サポート] クライアント/システム トランザクション [オペレーション バンドル制限] [起動時間制限] [トランザクション一貫性保守] [トランザクション ログ サイズ] [トランザクション ログ バッファ サイズ] システム リソース/ディレクトリ [I/O スレッド数] [アクティブ クライアント数] [起動時のリソース割当て] [最小状態に戻す待ち時間] [作業ディレクトリ] [システム キャッシュ] [待機ロック タイムアウト] [トランザクション ログ ディレクトリ] [非アクティブ時、最小の状態に戻す] [ホーム ディレクトリ] [ワーカ スレッド数] ファイル設定 [アーカイブ ロギングの実行] [インデックス バランスの実行] [オープン ファイル数] [最大データベース数] [作成ファイルのバージョン] [システム データ] [ハンドル数] メモリ リソース [拡張オペレーション バッファ サイズ] [キャッシュ割当て] [最大圧縮レコード サイズ] [ソート バッファ サイズ] [通信バッファ サイズ] MicroKernel メッセージ ログ MicroKernel リソース使用状況の表示 MicroKernel リソースのモニタ MicroKernel ルータのオプション アクセス制御 [ターゲット エンジン] [リクエスタ] [ローカル] [ロード再試行回数] 2 Pervasive.SQL User’s Guide N 3-37 3-54 3-56 3-55 3-55 3-54 3-57 3-56 3-57 3-44 3-45 3-44 3-46 3-46 3-47 3-47 3-50 3-50 3-53 3-49 3-48 3-53 3-50 3-52 3-51 3-37 3-39 3-38 3-37 3-40 3-39 3-40 3-38 3-43 3-41 3-42 3-43 3-41 2-7 5-12 5-6 3-33 3-34 3-33 3-33 3-34 NetWare のみの設定 Btrieve 通信マネージャのオプション MicroKernel Database Engine のオプション 3-60 3-56 P Pervasive.SQL イベント ログ Pervasive.SQL ユーティリティ PERVASIVE_PATH 環境変数 PVSW.LOG ファイル 2-7 1-1 2-6 2-7 R RECOVER コマンド RI ユーティリティ CHECK コマンド LIST コマンド コマンド ファイル ROLLFWD コマンド BUTIL SQLUTIL 7-40 10-1 10-7 10-5 10-2 7-61 8-20 S SAVE コマンド BUTIL SQLUTIL Scalable SQL エンジンのオプション システム環境設定 [外部ソートファイルディレクトリ] [外部プロシージャの有効化] [その他すべての Scalable SQL コール] [通信バッファサイズ] [テーブル定義のチェック] [デフォルトの分離レベル] [トレースファイル制御] [ワーカ スレッド数] トレースファイル制御 [Scalable SQL ログイン失敗] [Scalable SQL ログイン / ログアウト] [トレース ファイル] [名前付きデータベースの管理] Scalable SQL 通信マネージャのオプション [サポートプロトコル] [受信パケットサイズ] [セッション数] [通信スレッド数] [通信バッファ サイズ] [リモート読込みバッファ サイズ] [リモート リクエストの受付] Scalable SQL リクエスタのオプション アクセス制御 [Scalable SQL コールバックのサポート] [拡張 XQLVersion のサポート] [サンクの使用] [ターゲット エンジン] 7-41 8-15 3-9 3-9 3-9 3-13 3-11 3-12 3-10 3-12 3-11 3-13 3-12 3-14 3-14 3-20 3-22 3-23 3-20 3-21 3-21 3-22 3-22 3-24 3-27 3-28 3-26 3-24 [通信バッファ サイズ] 3-28 [並行セッション数] 3-27 [並行タスク数] 3-26 [リモートの使用] 3-25 [ローカルの使用] 3-25 [ローカル変換 / マスク] 3-28 Scalable SQL リソースのモニタ 5-16 SDF(標準データ形式) 8-10 SETOWNER コマンド 7-51 SINDEX コマンド 7-52 Smart Components 2-2 ID 2-3 Services DLL 2-6 検索アルゴリズム 2-6 ダイナミック バインディング 2-6 タイプ コード A-1 名前付け 2-4 コンポーネント タイプ コード 2-5 プラットフォーム コード 2-4 SQLScope SQLScope について 9-1 SQL スクリプトの保存 9-14 SQL ステートメントの作成と実行 9-8, 9-10, 9-12 データベースへのログイン 9-5 SQLScope のショートカット キー 9-3 SQLUTIL ASCII ファイル 8-10 BLOAD コマンド 8-11 COPY コマンド 8-11 ENDBU コマンド 8-19 LOAD コマンド 8-13 ROLLFWD コマンド 8-20 SAVE コマンド 8-15 STARTBU コマンド 8-18 VER コマンド 8-23 概要 8-2 コマンド 8-3 コマンド オプション 8-5 コマンド構文の表示 8-3 コマンド ファイル 8-8 コマンド フォーマット 8-4 システム障害後のデータの回復 8-20 データのインポートとエクスポート 8-9 データベースのバックアップ 8-18 SQL インタフェース モジュールのバージョン表示 8-23 SQL ステートメントの区切り文字 9-34 SQL ステートメントのテンプレート 9-9 STARTBU コマンド BUTIL 7-55 SQLUTIL 8-18 STAT コマンド 7-64 STOP コマンド 7-67 U UNF(フォーマットされていない形式) 8-10 V VER コマンド BUTIL SQLUTIL 7-67 8-23 あ アーカイブ ロギング 3-4, 7-58 ファイルのバックアップ 7-60 空きスペース スレッショルド Btrieve メンテナンス ユーティリティ 7-9 SQLScope 9-24 ディスクリプション ファイル B-7 アクセス制御 Communications リクエスタの設定 3-35 DBNames インタフェースのオプション 3-29 MicroKernel ルータのオプション 3-33 Scalable SQL リクエスタのオプション 3-24 通信リクエスタの設定 3-35 アクセラレイティド ファイル オープン モード 7-38 アクティブ セッション 5-16, 5-18, 5-19 ファイル 5-6 い 一部セグメント ヌル キー イベント ログ作成 インデックス Btrieve メンテナンス ユーティリティでの表示 BUTIL による作成 SQLScope を使って表示する 作成と削除 インデックスの削除 Btrieve メンテナンス ユーティリティ BUTIL インデックス バランス Btrieve メンテナンス ユーティリティ 設定 ディスクリプション ファイル 7-10 2-7 7-8 7-52 9-24 7-20 7-22 7-48 7-8 3-38 B-7 え エラー コードの説明 エラー メッセージのリダイレクト BUTIL SQLUTIL 2-9 7-36 8-7 お 大きいファイル オーナ ネーム BUTIL BUTIL による消去 BUTIL による設定 SQLUTIL 設定と消去 7-5 7-35, 7-51 7-46 7-51 8-7 7-19 索引 3 オーファン行 一覧表示 RI ユーティリティ 10-9 SQLScope 9-17 チェック RI ユーティリティ 10-7 SQLScope 9-20 オルタネート コレーティング シーケンス (ACS) Btrieve メンテナンス ユーティリティ 7-10, 7-11 ディスクリプション ファイル B-2, B-4 か カーソル安定度ロック 外部インデックス ファイル Btrieve メンテナンス ユーティリティ BUTIL 回復 損傷ファイル Btrieve データ BUTIL 変更 Btrieve メンテナンス ユーティリティ 拡張ファイル Btrieve メンテナンス ユーティリティ BUTIL 数 キー バッファのバイト セッション 通信スレッド データ バッファのバイト ネットワーク接続の設定 並行セッション 並行タスク 可変長部割り当てテーブル (VAT) コントロールの設定 ディスクリプション ファイル内の 可変長レコード 環境変数 BTRINTF PERVASIVE_PATH 3-10 7-21 7-50 7-40 7-58 7-27 7-5 7-35 3-56 3-20, 3-58 3-21, 3-59 3-55 3-58 3-27 3-26 7-9 B-7 B-6 3-53 2-6 き キー セグメント 属性 バッファ 設定 編集 番号 キーオンリー ファイル Btrieve メンテナンス ユーティリティ ディスクリプション ファイル キー内のセグメント キーの降順ソート 4 Pervasive.SQL User’s Guide 7-10, B-8 7-10, B-7 3-56 6-11 B-7 7-8 B-6 7-10, B-8 7-11, B-8 キーのソート順 Btrieve メンテナンス ユーティリティ ディスクリプション ファイル キーの大小文字区別 Btrieve メンテナンス ユーティリティ ディスクリプション ファイル 起動 NetWare 上でのリビルド ユーティリティ Windows および OS/2 上でのリビルド ユーティリティ ビュー変換ユーティリティ 7-11 B-8 7-11 B-8 11-9 11-3 11-14 く クライアント/システム トランザクション クライアントの環境設定 繰り返し重複キー Btrieve メンテナンス ユーティリティ ディスクリプション ファイル 3-44 3-32 7-10 B-8 こ 互換モード(データベースへのログイン) コマンド ファイル BUTIL RI ユーティリティ SQLUTIL 規則 コメント SQL ステートメントのコメント ディスクリプション ファイル内のコメント コンポーネント固有の名前付け コンポーネントの ID 9-6 7-34 10-2 8-8 7-34 9-11 B-6 2-4 2-3 さ サーバ通信環境設定 作成 DDF SQL ステートメント インデックス BUTIL による追加 バウンド データベースの名前 ファイル Btrieve メンテナンス ユーティリティ BUTIL 参照整合性(RI)のチェックと修復 参照制約 RI ユーティリティ SQLScope 3-58 4-7, 4-18 9-10 7-52 3-16 7-12 7-47 10-1 10-4 9-17 し システム 障害後のデータの回復 障害後の変更の回復 トランザクション [オペレーション バンドル制限] [起動時間制限] ファイル ディレクトリの設定 ログ セグメント ファイルのサイズ設定 ログバッファサイズの設定 ファイル 7-58 7-27 3-44 3-45 3-53 3-45 3-45 3-52 す スクリプト ファイル ストアド ビュー Scalable SQL 4.x への変換 テキストへの変換 スレッドの設定 I/O 通信 ワーカ スレッド 9-14 11-16 11-14 3-47 3-21, 3-59 3-11 せ セットアップ ユーティリティ 全セグメント ヌル キー 3-2 7-10 そ 損傷ファイルの回復 7-40 た ダイナミック バインディング 2-6 ち 重複可能キー 重複キー B-7 7-10 つ 通信 スレッド数の設定 モニタ MicroKernel Scalable SQL 3-59 5-14 5-21 て ディスクリプション ファイル Btrieve メンテナンス ユーティリティ BUTIL コメントの追加 フォーマット ディスクリプション ファイルの要素 7-12 7-35 7-13 B-1 B-6 データ圧縮 Btrieve メンテナンス ユーティリティ 7-8 SQLScope 9-23 ディスクリプション ファイル B-6 データ オンリー ファイル B-6 データ辞書ファイル(DDF) DDF Ease での作成 4-7 概要 4-1 データ辞書ファイル(DDF)の保守 4-1 データのインポート Btrieve メンテナンス ユーティリティ 7-22 BUTIL 7-36, 7-38 SQLScope 9-25 SQLUTIL 8-9, 8-11 データのエクスポート Btrieve メンテナンス ユーティリティ 7-24 BUTIL 7-36, 7-41 SQLScope 9-25 SQLUTIL 8-9 データ バッファ サイズの設定 3-55 編集 6-11 データ ファイル 作成 7-44 情報レポートの生成 7-17 変換 11-2 コマンドライン リビルド ユーティリティ 11-9 対話型リビルド ユーティリティ 11-4 リビルド 11-2 データ ファイルの圧縮 Btrieve メンテナンス ユーティリティ 7-8 ディスクリプション ファイル B-6 データ ファイルのコンパクト化 Btrieve メンテナンス ユーティリティ 7-14 BUTIL 7-53 データ ファイルのサイズ縮小 Btrieve メンテナンス ユーティリティ 7-14 BUTIL 7-53 データベースのバックアップ 7-54 データベース名 削除 3-19 作成 3-16 修正 3-18 データベースへのログイン 9-5 デルタ ファイル 7-54 テンポラリ ファイルの削除 11-12 と トランザクション 一貫性保守 設定 説明 保証 ログ サイズ ログ ディレクトリ 3-44 3-4 3-40, 7-17 3-46 3-53 索引 5 トランスポート トレース Scalable SQL のコール 失敗したログインおよびログアウト トレース ファイル オプション キー バッファ サイズの設定 制御 データ バッファのサイズ設定 3-30 3-13 3-13 3-14, 3-54 3-56 3-12 3-55 な 名前付きデータベース RI ユーティリティ 削除 作成 修正 10-3 3-19 3-16 3-18 ぬ ヌル キー 7-10, B-8 は 排他ロック バウンド データベースの作成 パケット サイズの設定 MicroKernel Scalable SQL 通信マネージャ 破損したファイルの修復 SQLScope バッファ キーとデータの編集 設定 MicroKernel の通信 圧縮 拡張オペレーション キー データ ログ パフォーマンスについて バルク データのロード ハンドル 設定 モニタ 3-10 3-16 3-60 3-23 9-29 6-11 3-41 3-42 3-43 3-56 3-55 3-45 3-4 8-11 3-38 5-9 ひ ビュー変換ユーティリティ VCONV VTEXT Windows NT でのビュー変換ユーティリティ 概要 起動 標準データ形式(SDF) 6 Pervasive.SQL User’s Guide 11-16 11-14 11-14 11-13 11-14 8-10 ふ ファイル ASCII 7-23, 8-10 オープン 6-12 外部インデックス 7-21, 7-50 拡張 Btrieve メンテナンス ユーティリティ 7-5 BUTIL 7-35 作成 7-12 システム 3-52 仕様 Btrieve メンテナンス ユーティリティ 7-7 SQLScope 9-22 スペック ディスクリプション ファイル B-6 設定する オープンの数 3-37 トレース 3-54, 3-55 デルタ 7-54 トレースを設定する 3-56 バックアップ 7-58, 7-60 フォーマットの設定 3-39 ファイル間のレコードのコピー 7-26 ファイル システムのセキュリティ 1-4 ファイルのオープン 6-12 ファンクション エグゼキュータ ユーティリティ オペレーションの実行 6-12 概要 6-1 ブランク切り捨て SQLScope 9-23 ブランク トランケーション Btrieve メンテナンス ユーティリティ 7-9 ディスクリプション ファイル B-6 分散型データベース , 設定 3-3 へ ページ サイズ Btrieve メンテナンス ユーティリティ 7-7 SQLScope 9-23 ディスクリプション ファイル B-6 プリアロケーション Btrieve メンテナンス ユーティリティ 7-8 ディスクリプション ファイル B-6 変換 SQL ビュー 11-13 データ ファイル コマンドライン リビルド ユーティリティ 11-9 対話型リビルド ユーティリティ 11-4 ファイル 11-2 変更可能キー 7-10, B-7 め メンテナンス ユーティリティ れ 7-2 も モジュールのロード エラーの診断 モニタ MicroKernel 通信 MicroKernel リソース Scalable SQL Scalable SQL 通信 Scalable SQL リソース アクティブ セッション アクティブ ファイル ハンドル ユーザ情報 モニタ ユーティリティ 2-9 5-14 5-6, 5-12 5-16 5-21 5-20 5-16, 5-18, 5-19 5-6 5-9 5-10 5-2 ゆ ユーザ情報の表示 ユーティリティの概要 5-10 1-2 10-10 7-24 7-38 9-25 8-9 7-24 7-41 9-25 8-9 7-8 B-6 7-26 7-7 B-6 ろ り リクエスタ リソース モニタ MicroKernel Scalable SQL リビルド ユーティリティ NetWare 上での実行 NetWare の例 Windows および OS/2 上での実行 コマンド ライン オプション 実行 設定 データ ファイルの変換 テンポラリ ファイルの削除 リモート 使用 接続 , 設定 例外テーブル レコード インポート Btrieve メンテナンス ユーティリティ BUTIL SQLScope SQLUTIL エクスポート Btrieve メンテナンス ユーティリティ BUTIL SQLScope SQLUTIL 可変長 Btrieve メンテナンス ユーティリティ ディスクリプション ファイル データ ファイル間のコピー レコード長 Btrieve メンテナンス ユーティリティ ディスクリプション ファイル 3-33 5-12 5-20 11-9 11-11 11-3 11-9 11-9 11-6 11-2 11-12 ローカル接続の設定 ロード エラーの診断 ロード エラーのトラブルシューティング ロール フォワード ログアウト ログイン ログイン/ログアウトのトレース ログ セグメント ファイルのサイズの設定 ログの記録 Pervasive.SQL イベント ログバッファサイズ 3-3 2-9 2-9 7-27 9-7 9-5 3-12 3-45, 3-46 2-7 3-45 わ ワーカ スレッド数 3-11, 3-51 3-25 3-3 索引 7 8 Pervasive.SQL User’s Guide ご意見記入用紙 Pervasive Software では、マニュアルに関するご意見、ご提案をお待ちしております。 下のコメント欄にご記入のうえ、下記住所宛てにお送りください。 パーベイシブ・ソフトウェア株式会社 Pervasive.SQL User’s Guide 部品番号 100-003441-003 〒 105-6124 1998 年 8 月 東京都港区浜松町 2-4-1 世界貿易センタービル 24F(私書箱 10 号) 電話 : 03-5405-2261 ファックス : 03-5405-2269 電子メール :tyosupport@pervasive.co.jp お名前と役職 : 会社名 : 住所 : 電話番号 : ファックス番号 : 本書の使用目的 : q 概要 q チュートリアル q リファレンス q ガイド 完成度 読みやすさ ( スタイル ) 編成 / 書式 正確さ 例 図 有用性 優れている 良い ふつう 悪い q q q q q q q q q q q q q q q q q q q q q q q q q q q q 上記のように評価した理由をお聞かせください。 本書の内容で改善できる点がありましたら、お書きください。 複数の人がコメントを送る場合は、必要に応じてこのコメント・ページを複写してください。
© Copyright 2024 Paperzz