DSN と ODBC アドミニストレーター
 
このページをシェアする                  
DSN と ODBC アドミニストレーター
Pervasive PSQL における DSN と ODBC アドミニストレーターの使用
この章では、以下の項目について説明します。
ODBC データベース アクセス
ODBC 接続文字列
Pervasive 32 ビット ODBC エンジン DSN セットアップ
エンジン DSN 用の詳細な接続属性
DSN セットアップを介したデータベースの作成
Pervasive 32 ビット ODBC クライアント DSN セットアップ
クライアント DSN 用の詳細な接続属性
クライアント DSN セットアップから操作できるエンジン DSN の接続属性
クライアント DSN セットアップから操作できるエンジン DSN の作成
クライアント DSN セットアップから操作できるエンジン DSN の変更
Pervasive 64 ビット ODBC DSN セットアップ
ODBC データベース アクセス
標準 ODBC では、ODBC を使用するアプリケーションはオペレーティング システムで定義されているデータ ソース名(DSN)を介してデータベースにアクセスする必要があります。
Pervasive PSQL はファイル DSN をサポートしません。ユーザーまたはシステム DSN を使用する必要があります。そのコンピューター上のすべてのユーザーが利用可能であるため、一般的にはシステム DSN が使用されます。
ODBC アプリケーションを使用してアクセスする Pervasive PSQL データベースはどれも、そのデータベースを識別する DSN を持っている必要があります。データベース エンジンを指す DSN を、エンジン DSN と言います。エンジン DSN は 32 ビットのみなので、その使用は現在推奨されていません。エンジン DSN または名前付きデータベースを指す 32 ビット DSN を、クライアント DSN と言います。64 ビット オペレーティング システムの DSN は、「エンジン」や「クライアント」の呼称を付けないで、単に 64 ビット DSN と呼ばれます。
メモ: 新規または修正を施す 32 ビット アプリケーションは、ローカルでもリモートでも、エンジン DSN を使用するのではなく名前付きデータベースに接続する必要があります。この代わりに、ドライバー名を指定することによって、アプリケーションが DSN レス接続を使用するという方法もあります(Pervasive PSQL ODBC ドライバー名を参照してください)。エンジン DSN の使用を避けることで、将来エンジン DSN が Pervasive PSQL でサポートされなくなってもアプリケーションを維持することができます。
トランザクショナル インターフェイスからのみアクセスされる Pervasive PSQL データベースでは DSN は必要ありません。しかし、そのデータベース テーブルは PCC で表示されず、PCC を使用して操作することもできません。PCC でテーブルのデータを可読形式で表示するには、テーブルがデータ辞書ファイル(DDF)に定義されている必要があります。DDF Builder User's Guideを参照してください。
Pervasive PSQL Java ユーティリティは DSN を必要としません。たとえば、Pervasive PSQL Control Center は ODBC ではなく JDBC を使用します。
ODBC アドミニストレーター
Windows 64 ビット オペレーティング システムには、ODBC アドミニストレーター用の実行可能ファイルが 2 種類含まれています。1 つは 32 ビット DSN 用で、もう 1 つは 64 ビット DSN 用です。各 ODBC アドミニストレーターは、自身のビット数に合致するシステム DSN のみを列挙します。つまり、64 ビット ODBC アドミニストレーターは 64 ビット システム DSN を列挙します。逆もまた同様です。Windows コントロール パネルから ODBC アドミニストレーターを起動した場合は、64 ビット バージョンが実行されます。
Pervasive PSQL Control Center(PCC)の[ツール]メニューには、32 ビットまたは 64 ビットの ODBC アドミニストレーターを起動するためのオプションが個々に含まれています。ここで留意する点は、ODBC アドミニストレーターが既に開かれている場合、Windows はそれをデフォルトとするということです。つまり、32 ビット ODBC アドミニストレーターが開いているときに 64 ビット用を起動しようとすると、Windows は 32 ビット バージョンを表示します(逆も同様)。言い換えると、ODBC アドミニストレーターは同時に 1 つのバージョンしか実行されないということです。これは Windows オペレーティング システムの制限であり、Pervasive PSQL の制限ではありません。
ODBC 接続文字列
このセクションでは、Pervasive PSQL でサポートされる ODBC 接続文字列について説明します。この情報は、接続文字列を指定することができるデータベース アクセス ツールを使用する上級ユーザー、および Pervasive PSQL にアクセスする ODBC または OLE DB アプリケーションの開発者向けです。
Pervasive PSQL ODBC ドライバー名
次の表に、Pervasive PSQL ODBC ドライバーの一覧を示します。
表 103 Pervasive PSQL ODBC ドライバー
ドライバー名
ビット数
備考
Pervasive ODBC Engine Interface
32 ビット
32 ビット エンジン DSN を作成します。
ローカルの名前付きデータベースへ接続します。
32 ビット アプリケーション向け。
非推奨
Pervasive ODBC Client Interface
32 ビット
32 ビット クライアント DSN を作成します。
ローカルまたはリモートの名前付きデータベース、あるいはエンジン DSN へ接続します。
インターフェイス GUI では、名前付きデータベースとエンジン DSN の両方を一覧に表示します。
32 ビット アプリケーション向け。
Pervasive ODBC Interface
64 ビット
64 ビット DSN を作成します。
ローカルまたはリモートの名前付きデータベースへ接続します。
64 ビット アプリケーション向け。
新規または修正を施す 32 ビット アプリケーションは、ローカルでもリモートでも、エンジン DSN を使用するのではなく名前付きデータベースに接続する必要があります。この代わりに、Pervasive ODBC Client Interface を指定することによってアプリケーションが DSN レス接続を使用するという方法もあります。エンジン DSN の使用を避けることで、将来エンジン DSN が Pervasive PSQL でサポートされなくなってもアプリケーションを維持することができます。
ODBC の Driver パラメーターを使用して、Pervasive PSQL データベース エンジンに接続します。たとえば、次のように指定します。
Driver={Pervasive ODBC Engine Interface}
Driver={Pervasive ODBC Client Interface}
Driver={Pervasive ODBC Interface}
その他のパラメーター
ほかに使用されるパラメーターを下の表に示します。
表 104 32 ビット エンジン DSN 接続文字列
接続文字列
説明
DBQ=[@]db_name
接続する内部データベース名を指定します。DSN ではありません。必須。
@ 文字は省略可能です。この文字はなんの意味も持たず、以前のバージョンとの互換性のためだけにサポートされています。
UID=user_name
データベースのセキュリティが有効になっている場合、ユーザー名を指定します。セキュリティの設定により、省略可能。
PWD=password
データベースのセキュリティが有効になっている場合、パスワードを指定します。セキュリティの設定により、省略可能。
OPENMODE=-4 | -1 | 0 | 1
現在の接続で開くファイルのデフォルトのオープン モードを指定します。デフォルトは 0 です。"Normal" はローカル接続だけで使用され、リモート クライアント接続では使用できません。省略可能。
ファイル オープン モードの詳細については、DSN オープン モードを参照してください。
TRANSLATIONDLL=path_and_DLL_name
OEM/ANSI 変換に使用する DLL のフル パス名を指定します。詳細については、OEM/ANSI 変換を参照してください。
 
表 105 32 ビット クライアント DSN 接続文字列
接続文字列
説明
ServerName=server[.port]
接続するコンピューターのマシン名または IP アドレスを指定します。デフォルトのポートを使用しない場合は、使用するポート番号を指定します。必須。IPv6 アドレスを使用したり、ODBC 接続にポート番号を追加したりする場合は、IPv6-literal.net 名または UNC 形式の名前を使用します。『Getting Started with Pervasive PSQL』のドライブ ベースの形式を参照してください。
ServerDSN=dsn_name
接続するエンジン DSN を指定します。DBQ が指定されていなければ必須。
TransportHint=<TCP | SPX>[:SPX | TCP]
使用する転送プロトコルまたは最初に試行する転送プロトコルを指定します。デフォルトは "TCP:SPX"("先に TCPIP を試行してから SPX を試行")です。省略可能。
たとえば、"TCP"("TCP のみ試行")という値を設定すると、クライアントは TCP/IP 接続のみを使用するように指定できます。"SPX:TCP"("先に SPX を試行してから TCP を試行")という値を設定すると、クライアントはまず SPX 接続を試し、成功しなければ TCP/IP 接続を試行します。
DBQ=[@]db_name
接続する内部データベース名を指定します。DSN ではありません。必須。
@ 文字は省略可能です。この文字はなんの意味も持たず、以前のバージョンとの互換性のためだけにサポートされています。
TCPPort=port
サーバーを探す TCP/IP ポートを指定します。省略可能。『Getting Started with Pervasive PSQL(Server Edition)』のデフォルトの通信ポートの変更を参照してください。
ArrayFetchOn=1 | 0
結果セットをクライアント上にキャッシュするかどうかを指定します。デフォルトは 1(キャッシュする)です。省略可能。
ArrayBufferSize=size
クライアント キャッシュのサイズを KB 単位で指定します。デフォルトは 8 KB です。省略可能。
PvTranslate=auto
または
PvTranslate がないかまたは空
ODBC は接続文字列属性の PvTranslate を使用して、クライアントがデータベース エンジンに接続するときにデータ エンコードを指定します。この属性は、なしまたは空にしておくことができますが、その場合値は "自動" に設定されます。
この属性がないかまたは空の場合、ODBC は文字データを変換しません。これは旧来の動作です。旧来どおり "OEM/ANSI" 設定が適用されます。OEM/ANSI 変換を参照してください。
属性に "自動" を設定した場合、クライアントとサーバーは自動的に適合するエンコードを確立します。データ変換は、必要に応じクライアントで行われます。DSN では "OEM/ANSI" より "自動" が優先されることに注意してください。ローカル DSN が自動に設定されている場合、PvTranslate はデフォルトで "自動" になります。自動を参照してください。
PvTranslate 属性は、ODBC 関数の SQLDriverConnect(例 D を参照)または SQLConnect(自動エンコード用の DSN 設定を介して)に含めることができます。
 
表 106 64 ビット DSN 接続文字列
接続文字列
説明
ServerName=server[.port]
接続するコンピューターのマシン名または IP アドレスを指定します。デフォルトのポートを使用しない場合は、使用するポート番号を指定します。必須。IPv6 アドレスを使用したり、ODBC 接続にポート番号を追加したりする場合は、IPv6-literal.net 名または UNC 形式の名前を使用します。『Getting Started with Pervasive PSQL』のドライブ ベースの形式を参照してください。
TransportHint=<TCP | SPX>[:SPX | TCP]
使用する転送プロトコルまたは最初に試行する転送プロトコルを指定します。デフォルトは "TCP:SPX"("先に TCPIP を試行してから SPX を試行")です。省略可能。
たとえば、"TCP"("TCP のみ試行")という値を設定すると、クライアントは TCP/IP 接続のみを使用するように指定できます。"SPX:TCP"("先に SPX を試行してから TCP を試行")という値を設定すると、クライアントはまず SPX 接続を試し、成功しなければ TCP/IP 接続を試行します。
DBQ=[@]db_name
接続する内部データベース名を指定します。DSN ではありません。必須。
@ 文字は省略可能です。この文字はなんの意味も持たず、以前のバージョンとの互換性のためだけにサポートされています。
TCPPort=port
サーバーを探す TCP/IP ポートを指定します。省略可能。『Getting Started with Pervasive PSQL(Server Edition)』のデフォルトの通信ポートの変更を参照してください。
ArrayFetchOn=1 | 0
結果セットをクライアント上にキャッシュするかどうかを指定します。デフォルトは 1(キャッシュする)です。省略可能。
ArrayBufferSize=size
クライアント キャッシュのサイズを KB 単位で指定します。デフォルトは 8 KB です。省略可能。
PvTranslate=auto
または
PvTranslate がないかまたは空
ODBC は接続文字列属性の PvTranslate を使用して、クライアントがデータベース エンジンに接続するときにデータ エンコードを指定します。この属性は、なしまたは空にしておくことができますが、その場合値は "自動" に設定されます。
この属性がないかまたは空の場合、ODBC は文字データを変換しません。これは旧来の動作です。旧来どおり "OEM/ANSI" 設定が適用されます。OEM/ANSI 変換を参照してください。
属性に "自動" を設定した場合、クライアントとサーバーは自動的に適合するエンコードを確立します。データ変換は、必要に応じクライアントで行われます。DSN では "OEM/ANSI" より "自動" が優先されることに注意してください。ローカル DSN が自動に設定されている場合、PvTranslate はデフォルトで "自動" になります。自動を参照してください。
PvTranslate 属性は、ODBC 関数の SQLDriverConnect(例 D を参照)または SQLConnect(自動エンコード用の DSN 設定を介して)に含めることができます。
接続文字列では、メタデータ バージョンはパラメーターではありません。メタデータ バージョンは、接続しようとするデータベースの名前に基づいて暗黙に宣言されます。メタデータのバージョンを参照してください。
例 A
この例では、32 ビット オペレーティング システムで、"ServerMain" というリモート サーバー上にある内部名 "SOMEDATA" というデータベースに対し、TCP/IP ポート 1590 を使用して、まず TCP/IP 接続を試みてから SPX 接続を試みる方法を示します。
Driver={Pervasive ODBC Client Interface}; ServerName=ServerMain.1590;DBQ=SOMEDATA; TransportHint=TCP:SPX;
例 B
この例は、データベース セキュリティが有効になっている "MyServer" という名前のリモート サーバー上の "mydata" というエンジン DSN に接続する方法を示します。
Driver={Pervasive ODBC Client Interface}; ServerName=MyServer;ServerDSN=mydata;UID=ajones;PWD=jones52;
例 C
この例は、内部名 "DATA5" のローカル データベースに接続する方法を示します。
Driver={Pervasive ODBC Engine Interface};DBQ=DATA5;
例 D
ODBC クライアント アプリケーションが SQLDriverConnect を使用して "MyServer" という名前のリモート サーバー上にある "mydata" という名前のサーバー DSN に接続し、自動エンコード サポートを確立します。
Driver={Pervasive ODBC Client Interface}; ServerName=MyServer;ServerDSN=mydata;PvTranslate=auto;
サーバー(エンジン)DSN が指定されているため、PvTranslate 属性が明示的に記述されています。
例 E
この例は、64 ビット オペレーティング システム上にある、"acctdomestic" という名前のローカル データベースに接続する方法を示します。
Driver={Pervasive ODBC Interface};DBQ=acctdomestic;
Pervasive 32 ビット ODBC エンジン DSN セットアップ
このダイアログは、タイトル バーに[Pervasive 32-ビット ODBC エンジン DSN セットアップ]と表示され、エンジン インターフェイスのセットアップ用であることを示します。エンジン DSN は 32 ビットのみです。
Windows 64 ビット オペレーティング システムには、ODBC アドミニストレーター用の実行可能ファイルが 2 種類含まれています。1 つは 32 ビット DSN 用で、もう 1 つは 64 ビット DSN 用です。各 ODBC アドミニストレーターは、自身のビット数に合致するシステム DSN のみを列挙します。つまり、64 ビット ODBC アドミニストレーターは 64 ビット システム DSN を列挙します。逆もまた同様です。Windows コントロール パネルから ODBC アドミニストレーターを起動した場合は、64 ビット バージョンが実行されます。
Pervasive PSQL Control Center(PCC)の[ツール]メニューには、32 ビットまたは 64 ビットの ODBC アドミニストレーターを起動するためのオプションが個々に含まれています。ここで留意する点は、ODBC アドミニストレーターが既に開かれている場合、Windows はそれをデフォルトとするということです。つまり、32 ビット ODBC アドミニストレーターが開いているときに 64 ビット用を起動しようとすると、Windows は 32 ビット バージョンを表示します(逆も同様)。言い換えると、ODBC アドミニストレーターは同時に 1 つのバージョンしか実行されないということです。これは Windows オペレーティング システムの制限であり、Pervasive PSQL の制限ではありません。
メモ: 新規または修正を施す 32 ビット アプリケーションは、ローカルでもリモートでも、エンジン DSN を使用するのではなく名前付きデータベースに接続する必要があります。この代わりに、Pervasive ODBC Client Interface を指定することによってアプリケーションが DSN レス接続を使用するという方法もあります。エンジン DSN の使用を避けることで、将来エンジン DSN が Pervasive PSQL でサポートされなくなってもアプリケーションを維持することができます。
データ ソース名
ODBC クライアント サーバー アーキテクチャは特定のデータ セットをそれぞれの名前で呼び出すので、わかりやすい名前で参照することができます。
接続をセットアップするデータ ソースの名前(データ ソース名または DSN と呼びます)を入力します。この DSN はデータ ソースの識別に役立ちます。
データベース エンジンでの DSN の使用に関する詳細については、ODBC データベース アクセスを参照してください。
説明
必要に応じ、DSN の説明を入力します。
データベース名
DSN に関連付けるデータベースを選択します。オプションで[作成]をクリックすると、新規データベースを作成できます。
内部データベース名
Pervasive PSQL が使用するデータベースが内部データベース名(DBNAME)であることを識別する方法です。データベース アクセスに ODBC を使用している場合、1 つの DBNAME を参照する DSN(データ ソース名)エントリを作成する必要があります。同じ DBNAME を参照する複数の DSN を設定することもできます。サーバー上のデータ ファイルの物理的な場所が変更された場合、DBNAME のみを更新する必要があります。すべての DSN は変更されません。
エンジン DSN 用の詳細な接続属性
エンジン DSN 用の詳細な接続属性には以下のものがあります。
DSN オープン モード
エンコード変換
DSN オープン モード
エンジン DSN 用の DSN オープン モード オプションを使用すると、指定した DSN を介してテーブルを開く際に適用する特性を指定できます。これらのオプションは互いに排他的で、1 つしか選択することはできません。
これらのオプションは Btrieve の Open(0)オペレーションで使用できるオープン モードに直接対応しています。DSN のオープン モードを設定することにより、その DSN によって開かれるテーブル(Btrieve ファイルに対応)のデフォルトの動作を設定することになります。
表 107 DSN オープン モードおよび ODBC 接続オプション
オープン モード
生成される ODBC 接続文字列
SQLSetConnectOption 呼び出し
ノーマル
OPENMODE=0
SQLSetConnectOption(pSubDbc, SQL_ACCESS_MODE, SQL_MODE_READ_WRITE);
アクセラレイティド
OPENMODE=-1
SQLSetConnectOption は無視されます。
リードオンリー
OPENMODE=1
SQLSetConnectOption(pSubDbc, SQL_ACCESS_MODE, SQL_MODE_READ_WRITE);
エクスクルーシブ
OPENMODE=-4
SQLSetConnectOption は無視されます。
ノーマル
デフォルトはノーマル モードです。ノーマル モードでテーブルを開くと、データベースに定義されている権限に従って読み込み/書き込みアクセスが許可されます。
このモードが選択された場合、ODBC 接続文字列には OPENMODE=0 が含まれ、データベースに接続した際に次の ODBC 関数呼び出しが実行されます。
SQLSetConnectOption(pSubDbc, SQL_ACCESS_MODE, SQL_MODE_READ_WRITE);
アクセラレイティド
アクセラレイティド モードでテーブルを開くと、データベース エンジンが現在のユーザーに対し関数のロギングを行えなくなり、追加/更新のパフォーマンスが向上します。アクセラレイティド モードのロギングを変更しても、同じテーブルにアクセスしている他のユーザーには影響がありません。
注意: データベース エンジンは、クライアントがアクセラレイティド モードを使用している間は、クライアントのトランザクション アトミシティ、トランザクション一貫性保守、およびアーカイブ ログの安全性を保証できません。この制約があるのは、ログからの復元が必要な場合に、完全な復元を行うために十分な情報がログに含まれていない可能性があるからです。なぜなら、ログは、1 つのデータ ファイル上で行った操作の部分的な記録でしかないからです。

たとえば、アクセラレイティド モードを使用して追加を実行中のクライアントと、ノーマル モードを使用して更新を実行中のクライアントが同じファイルへアクセス中にシステム障害が発生した場合、メモリ上のアクセラレイティドの追加操作はディスクに書き出されませんが、トランザクショナルな更新操作はトランザクション ログに書き込まれるため、データ ファイルにまだ存在していないレコードに対する更新がトランザクション ログに含まれる可能性があります。

この操作の組み合わせを含むアーカイブ ログをロール フォワードしようとすると、失敗します。
このモードが選択された場合、ODBC 接続文字列には OPENMODE=-1 が含まれ、ODBC ドライバーは SQLSetConnectOption 呼び出しを無視します。このモードを指定するのに SQLSetConnectOption は使用できません。
リードオンリー
リード オンリー モードでテーブルを開いた場合、データベース構造やデータベース内のデータを変更する操作は許可されません。
このモードが選択された場合、ODBC 接続文字列には OPENMODE=1 が含まれ、データベースに接続した際に次の ODBC 関数呼び出しが実行されます。
SQLSetConnectOption(pSubDbc, SQL_ACCESS_MODE, SQL_MODE_READ_WRITE);
エクスクルーシブ
テーブルをエクスクルーシブ モードで開くと、そのテーブルに対するほかの接続は許可されません。そのテーブルに現在ほかのユーザーがアクセスしている場合、エクスクルーシブ モードで開くことはできません。後でもう一度試す必要があります。
このモードが選択された場合、ODBC 接続文字列には OPENMODE=-4 が含まれ、ODBC ドライバーは SQLSetConnectOption 呼び出しを無視します。このモードを指定するのに SQLSetConnectOption は使用できません。
エンコード変換
エンコード変換オプションは、Pervasive PSQL データベース エンジンと ODBC を使用する Pervasive PSQL クライアント アプリケーション間で文字データをどのように変換するかを指定します。エンコードは、データをエンジンとクライアントの両方が処理できる標準形式にします。
なし
この設定では、クライアントおよびサーバー間で文字データの変換は行われません(クライアントとサーバーが同じオペレーティング システムのエンコードを使用していることが前提です)。
Pervasive PSQL v10 SP1 より前のバージョンでは、"OEM/ANSI 変換" には 選択解除または選択の 2 つの状態からの単一の選択がありました。選択解除状態は、"なし" と名付けられ、後方互換性のためにデフォルトとなっています(以前のバージョンでは選択解除がデフォルトでした)。
OEM/ANSI 変換
この設定により、アプリケーションは Pervasive PSQL を使用してすべての OEM 文字セットの文字データを格納または取得することができ、ANSI Windows 文字セットを使用してデータを操作および表示することができます。
Pervasive ODBC ドライバー トランスレーター DLL が、2 つの文字セット間で必要な変換をすべて行います。この機能は、DSN ごとにオン/オフを切り替えることができます。データベースとやり取りする文字データは ODBC ドライバーによって、OEM 文字セットと ANSI 文字セット間で正しく変換されます。
Pervasive PSQL Control Center(PCC)では JDBC ドライバーを使用します。JDBC ドライバーでは OEM から ANSI への変換を認識しません。PCC で表示させたい OEM データがある場合、データベースのプロパティで文字エンコード IBM437 を使用するよう設定します。
アプリケーションで SQLDriverConnect を使用してデータ ソースに接続する場合は、接続文字列オプション TRANSLATIONDLL=path_and_DLL_name を使って、トランスレーター DLL を指定することもできます。Pervasive PSQL 用のトランスレーター DLL 名は W32BTXLT.DLL です。
メモ: OEM から ANSI への変換オプションは、クライアントまたはローカル エンジン DSN のみで使用できます。リモート エンジン DSN の設定時には使用できません。
自動
この設定は、エンジン マシン上のデータベースのエンコードがクライアント マシン上の OS エンコードと異なる場合に文字データ形式を自動的に変換するよう、Pervasive PSQL ODBC クライアントに指示します。
Pervasive PSQL ODBC クライアントは、クライアントとサーバーが同じエンコードを使用することを確実にします。文字データの変換は、要求に応じてクライアントで行われます。エンジン マシン上のデータベース エンコードがクライアント マシン上の OS エンコードと同じ場合は、文字データ変換は不要です。
"自動" を指定するには、クライアントとサーバーが バージョン 10.1 以上である必要があります。
このマニュアルのコード ページと、『Pervasive PSQL User's Guide』のエンコードの相互の影響も参照してください。
設定による相互の影響
次の表で、データベース コード ページと DSN エンコード間の相互の影響を説明します。コード ページの説明については、DSN セットアップを介したデータベースの作成を参照してください。
表 108 データベース コード ページと DSN のエンコード変換設定
データベースのコード ページ
DSN エンコード変換
Pervasive PSQL ODBC ドライバー
サーバーのデフォルト
なし
(Pervasive PSQL v10 SP1 より前のバージョンのデフォルトの動作と同じです。)
データやメタデータの変換は行われません。サーバー上の OS エンコードとクライアント上の OS エンコードが一致していることが前提です。
データ変換の互換性のためには、クライアント マシンで使用するエンコードが、データベースにおけるデータとメタデータのエンコードと一致する必要があります。
特定のコード ページ
なし
(Pervasive PSQL v10 SP1 より前のバージョンのデフォルトの動作と同じです。)
データやメタデータの変換は行われません。サーバー上の OS エンコードとクライアント上の OS エンコードが一致していることが前提です。
データ変換の互換性のためには、クライアント マシンで使用するエンコードが、データベースにおけるデータとメタデータのエンコードと一致する必要があります。
サーバーのデフォルト
または
特定のコード ページ
OEM/ANSI
データベース コード ページを無視し、データおよびメタデータを、データベースの OEM エンコードからクライアント アプリケーションの ANSI Windows エンコードに変換します。
サーバーのデフォルト
自動
データおよびメタデータを、サーバーのデフォルトの OS エンコードから、クライアントの OS エンコードに変換します。
特定のコード ページ
自動
データおよびメタデータを、データベース コード ページから、クライアントの OS エンコードに変換します。
DSN セットアップを介したデータベースの作成
次の表は、データベースの作成ダイアログ上にあるコントロールについての説明です。
要素
説明
データベース名
データベース一覧に表示されるデータベースの名前。たとえば、Pervasive PSQL Control Center で表示されるデータベース名です。
メモデータベース名に既存のデータ ソース名(DSN)と同じ名前を使うことはできません。
整合性の設定
データベースに整合性制約(セキュリティ、RI、トリガー)を設定するかどうかを指定します。これらの制約は、データ ファイルへの ODBC/SQL アクセスだけでなく、Btrieve アクセスにも適用されます。
追加情報については、『Advanced Operations Guide』の Btrieve およびリレーショナル制約間の相互作用を参照してください。
バウンド
データベースが、バインドされているかどうかを示します。データベースをバインドすると、DDF またはデータ ファイルが別のデータベースによって使用されることを防ぎ、データ ファイルが同一データベース内で複数の別のテーブル定義を持つことを防ぎます。
バウンド データベースの詳細については、『Advanced Operations Guide』の「バウンド データベースと整合性の設定」を参照してください。
長いメタデータ(V2 メタデータ)
データベースで使用するメタデータに対し、バージョン 1(V1)またはバージョン 2(V2)のどちらかを指定します。
Pervasive ODBC エンジン インターフェイスでは、メタデータでバージョン 1(V1)とバージョン 2(V2)という 2 つのバージョンをサポートします。メタデータのバージョンはデータベースのプロパティです。このプロパティはそのデータベース内の全テーブルに対して適用され、dbnames.cfg ファイルに記録されます。データベースではメタデータ バージョン 1 を使用するテーブルとメタデータ バージョン 2 を使用するテーブルを一緒に使用することはできません。2 つのバージョンのメタデータはそれぞれ情報をやり取りすることができません。
追加情報については、メタデータのバージョンを参照してください。
コード ページ
データベースのデータおよびメタデータに適用されるコード ページを指定します。このプロパティは DBNAMES.cfg に格納されます。
デフォルトのコード ページは "サーバーのデフォルト" で、データベース エンジン実行中のサーバーのオペレーティング システム コード ページを意味します。
データベース コード ページとクライアント エンコードは別個のものですが、相互に関連しています。『Pervasive PSQL User's Guide』のエンコードの相互の影響を参照してください。
Btrieve セキュリティ ポリシー
トランザクショナル インターフェイスで使用するセキュリティ モデルを指定します。『Advanced Operations Guide』のトランザクショナル インターフェイスで使用可能なモデルを参照してください。
辞書のロケーション
この場所は、辞書ファイル(DDF)が存在する物理的な保管場所を指定します。この場所は、接続しているサーバーと同じサーバーで、データベース エンジンが実行されているサーバーにある必要があります。場所の形式は、サーバー マシンで直接作業しているような形式にする必要があります。
drive:\path という形式で入力します。drive はサーバーのドライブ名です。
データ ファイルのロケーション
この場所は、データ ファイルが存在する物理的な保管場所を指定します。[追加]ボタンをクリックすると、データ ファイルの場所をリストに追加することができます。[削除]ボタンをクリックすると、データ ファイルの場所をリストから削除することができます。データ ファイルの場所は、データベース エンジンが起動している同じサーバー上でなければなりません。
[辞書のロケーション]についても同じ方法で場所を指定してください。
Pervasive 32 ビット ODBC クライアント DSN セットアップ
エンジン DSN を除けば、32 ビット クライアント DSN セットアップのコントロールは、64 ビット DSN のコントロールと同じです。64 ビット オペレーティング システムのエンジン DSN は、32 ビット ODBC アドミニストレーターを介さないと作成も変更もできません。
Windows 64 ビット オペレーティング システムには、ODBC アドミニストレーター用の実行可能ファイルが 2 種類含まれています。1 つは 32 ビット DSN 用で、もう 1 つは 64 ビット DSN 用です。各 ODBC アドミニストレーターは、自身のビット数に合致するシステム DSN のみを列挙します。つまり、64 ビット ODBC アドミニストレーターは 64 ビット システム DSN を列挙します。逆もまた同様です。Windows コントロール パネルから ODBC アドミニストレーターを起動した場合は、64 ビット バージョンが実行されます。
Pervasive PSQL Control Center(PCC)の[ツール]メニューには、32 ビットまたは 64 ビットの ODBC アドミニストレーターを起動するためのオプションが個々に含まれています。ここで留意する点は、ODBC アドミニストレーターが既に開かれている場合、Windows はそれをデフォルトとするということです。つまり、32 ビット ODBC アドミニストレーターが開いているときに 64 ビット用を起動しようとすると、Windows は 32 ビット バージョンを表示します(逆も同様)。言い換えると、ODBC アドミニストレーターは同時に 1 つのバージョンしか実行されないということです。これは Windows オペレーティング システムの制限であり、Pervasive PSQL の制限ではありません。
データ ソース名
ODBC クライアント サーバー アーキテクチャは特定のデータ セットをそれぞれの名前で呼び出すので、わかりやすい名前で参照することができます。
接続をセットアップするデータ ソースの名前(データ ソース名または DSN と呼びます)を入力します。この DSN はデータ ソースの識別に役立ちます。
データベース エンジンでの DSN の使用に関する詳細については、ODBC データベース アクセスを参照してください。
説明
必要に応じ、DSN の説明を入力します。
サーバー名/IP
データベース エンジンが実行されているマシンを指定します。クライアントを接続させるサーバー マシンのマシン名または IP アドレスを入力します。
転送のヒント
使用する転送プロトコルまたは最初に試行する転送プロトコルを指定します。デフォルトは "TCP:SPX"("先に TCPIP を試行してから SPX を試行")です。たとえば、"TCP"("TCP のみ試行")という値を設定すると、クライアントは TCP/IP 接続のみを使用するように指定できます。"SPX:TCP"("先に SPX を試行してから TCP を試行")という値を設定すると、クライアントはまず SPX 接続を試し、成功しなければ TCP/IP 接続を試行します。
データベース名
データベース名]をクリックし、[リストの取得]をクリックしたら、リストの中から接続したいデータベースを選択します。このリストは、サーバー名/IP に指定されたサーバー上のデータベースを返します。
任意で、[作成]をクリックして新しいデータベースを作成できます。
エンジン DSN
このコントロールは、32 ビット クライアント DSN セットアップ GUI にのみ表示されます。64 ビット DSN セットアップ GUI には表示されません。
エンジン DSN]をクリックし、[リストの取得]をクリックしたら、リストの中からクライアントを接続させたいエンジン DSN を選択します。このリストは、サーバー名/IP に指定されたサーバー上のエンジン DSN を返します。
任意で、[作成]をクリックして新しいエンジン DSN を作成したり、[変更]をクリックして既存のエンジン DSN を変更することができます。
Pervasive 32 ビット ODBC エンジン DSN セットアップも参照してください。
メモ: 新規または修正を施す 32 ビット アプリケーションは、ローカルでもリモートでも、エンジン DSN ではなく名前付きデータベースに接続する必要があります。この代わりに、32 ビット DSN 用の Pervasive ODBC Client Interface または 64 ビット DSN 用の Pervasive ODBC Interface を指定することによって、アプリケーションが DSN レス接続を使用するという方法もあります。エンジン DSN の使用を避けることで、将来エンジン DSN が Pervasive PSQL でサポートされなくなってもアプリケーションを維持することができます。

データベース名を参照してください。
クライアント DSN 用の詳細な接続属性
メモ: これらの接続属性は、32 ビット クライアント DSN と 64 ビット DSN のどちらにも適用されます。
配列フェッチを有効にする
配列フェッチは、クライアント マシン上の結果セットのためのメモリ キャッシュです。配列フェッチが有効な場合、最新の結果セットのデータはクライアント マシンのローカル メモリにキャッシュされます。それによって、その後のクエリのパフォーマンスが向上します。複数のクエリを実行する場合は、配列フェッチをオンにしておくことをお勧めします。
配列フェッチのキャッシュに使用されるバッファーのデフォルト サイズは 8 KB です。1 から 64 KB までの値を設定できます。
TCP/IP ポート番号
この設定を使用して Pervasive PSQL ODBC 通信を行うネットワーク ポート番号を変更することができます。サーバー エンジンのネットワーク レイヤーにも同様な設定があります。両方の設定を同時に行って同一のポート番号に変更しないと、クライアントとサーバーは通信できません。
注意: サーバーの対応するポート番号を変更しないのであれば、クライアントのポート番号も変更しないでください。サーバーおよびクライアントが同一のポート番号を使用しないと通信することができません。『Advanced Operations Guide』の TCP/IP ポートを参照してください。
一般的に、このポート番号を変更する必要があるのは、このポートを既に使用している別のネットワーク サービスがあり、ほかのアプリケーションより Pervasive PSQL アプリケーションのポート番号を変更する方が容易な場合です。
ポートに関する詳細については、『Getting Started with Pervasive PSQL』のデフォルトの通信ポートの変更を参照してください。
エンコード変換
エンコード変換オプションはエンジン DSN 用のオプションと同じです。エンコード変換を参照してください。
クライアント DSN セットアップから操作できるエンジン DSN の接続属性
DSN オープン モードおよびエンコード変換を参照してください。
クライアント DSN セットアップから操作できるエンジン DSN の作成
データソース名DSN の説明およびデータベース名については、Pervasive 32 ビット ODBC エンジン DSN セットアップを参照してください。
辞書のロケーションデータ ファイル整合性およびバウンドについては、DSN セットアップを介したデータベースの作成を参照してください。
クライアント DSN セットアップから操作できるエンジン DSN の変更
データソース名DSN の説明およびデータベース名については、Pervasive 32 ビット ODBC エンジン DSN セットアップを参照してください。
辞書のロケーションデータ ファイル整合性およびバウンドについては、DSN セットアップを介したデータベースの作成を参照してください。
Pervasive 64 ビット ODBC DSN セットアップ
64 ビット ODBC DSN セットアップのコントロールは、エンジン DSN のコントロールを除けば、32 ビット ODBC クライアント DSN セットアップと同じです(64 ビット オペレーティング システムのエンジン DSN は、32 ビット ODBC アドミニストレーターを介さないと作成も変更もできません)。
Pervasive 32 ビット ODBC クライアント DSN セットアップを参照してください。