更新: 2011年 8月
このファイルには重要な情報が含まれており、その中にはオンライン ヘルプに記述されていないものもあります。 このファイルのすべての内容に目を通してください。
この Readme は、次のセクションから構成されています:
InterBase XE をインストールし実行するためのシステム要件については、『インストール、登録、ライセンス情報 』のドキュメントを参照してください。
PDF 形式のドキュメント セットをインストールするには、ディスクに約 13 MB の空き領域が必要です。 これらのドキュメントは、InterBase のインストール時に [Server および Client] または [Client のみ] を選択した場合、デフォルトでインストールされます。 ただし、カスタム インストールでは、ドキュメント セットを含まないインストールを選択することが可能です。 ドキュメントを後でインストールする場合は、InterBase のインストールを実行し、[カスタム] を選び、コンポーネントの一覧から [ドキュメント] を選択します。
また、InterBase CD-ROM またはダウンロード ファイルのドキュメント用ディレクトリからコピーすることもできます。 大半のトピックでは、コマンドラインや手順の詳細が示されています。 該当する場合は、InterBase のユーザー インターフェイスである IBConsole を用いたタスクの実行方法や機能の利用方法についても説明しています。 次の表は、各ユーザー ガイドと、そこで取り扱われているトピックについて説明しています。
| ガイド名 | 扱われているトピックの説明 |
| 『操作ガイド』 |
InterBase データベース操作の手引き。 含まれているトピックは以下のとおりです。
|
| 『データ定義ガイド』 |
InterBase データベース設計および構築の手引き。 含まれているトピックは以下のとおりです。
|
| 『開発者ガイド』 |
Embarcadero 開発ツール、JDBC、および ODBC を用いた InterBase データベース アプリケーション開発の手引き。 含まれているトピックは以下のとおりです。
|
| 『API ガイド』 | InterBase API インターフェイスを用いた InterBase アプリケーション開発の手引き。 含まれているトピックは以下のとおりです。
|
| 『埋め込み SQL ガイド』 |
埋め込み SQL を用いた InterBase アプリケーション開発の手引き。 含まれているトピックは以下のとおりです。
|
| 『言語リファレンス ガイド』 | InterBase の要素に関するリファレンス ガイド。 含まれているトピックは以下のとおりです。
|
| Setup.html | このドキュメントでは、すべてのプラットフォームでのインストールおよび登録手順の詳細を説明しています。 |
このリリースでは、以下の新機能が提供されています。
以下は、前リリースからの新機能です:
OTW SSL TCP/IP 接続を使用する場合:
Update 3 リリースでは、
ibss_config ファイルでホスト名を指定する場合、そのホスト名で、IPv6 アドレスではなく、IPv4 TCP/IP アドレスを解決できることを確認してください。 強制的に IPv4 を解決する 1 つの方法は、ホスト名を、有効化 IPv4 アドレスと共に、hosts ファイルに記述することです。Windows では、ホスト名は、<Windows システム フォルダ>\drivers\etc\hosts ファイルに記述します。
Windows、Linux、Solaris 用 ODBC ドライバが更新されました。
ODBC Windows ドライバへのリンク: http://cc.embarcadero.com/item/25658/
ODBC Linux ドライバへのリンク: http://cc.embarcadero.com/item/25139/
ODBC Solaris ドライバへのリンク: http://cc.embarcadero.com/item/25660/
AES 暗号化キーを使用するデータベースでは、バックアップ/復元の作業を、サービスとしてのみ実行することができます。「強度の高い暗号化」ライセンス委任状は、エンジン内で容易に発見できるよう、設計されています。DES 暗号化キーを使用するデータベースは、純粋にクライアントとしてバックアップ(および復元)が可能です。しかしながら、適切な認証によって解読された暗号化データは、GBAK (やその他のバックアップ アプリケーション)の処理過程で、転送時に見えてしまう可能性があります。
バックアップ/復元操作は、DES または AES のどちらの利用にかかわらず、暗号化されたデータベースに対してのみに制限することが可能になりました。GBAK が、暗号化されたデータベースに対してサービスとして実行されなかった場合、次のようなエラー メッセージが表示されるようになっています:
gbak: ERROR: encrypted database: use -service switch
InterBase XE Update 2 では、OpenSSL が 1.0.0a から 1.0.0d に更新されました。
Interbase XE での OpenSSL 使用に関するさらなる情報については、『操作ガイド』の「ネットワーク設定」および『データ定義ガイド』の「データの暗号化」を参照してください。
OpenSSL に関するさらなる情報については、 http://openssl.org/ を参照してください。
ダイレクト入力/出力(I/O)機能により、メモリ リソースに制限があるシステム上でも大規模データベースを使用して、InterBase をよりスケーラブルに展開することが可能になりました。 Update 2 リリースでは、InterBase で、この「ダイレクト I/O」機能が Windows OS 上で利用可能になっています。 この機能により、Windows 2008 R2 や Windows 7 の 64 ビット OS エディションで多く見られる問題を避けることができます。これらでは、システム ファイル キャッシュが、物理メモリを過剰に使いきってしまい、緩慢なシステム パフォーマンスに引き起こします。
問題: InterBase は、すべてのプラットフォームで、ディスク上のファイルに対してデータベース ページの I/O を実行するため、バッファリングされたファイル I/O を使用しています。 このページはシステム ファイル キャッシュを介して配布されます。システム ファイル キャッシュは、RAM におけるページの複製ストアとして振る舞います。 それ以降の同一ページのロードについては、そのページがシステム ファイル キャッシュにあれば、OS カーネルによって迅速に処理されます。 システム ファイル キャッシュ(すべてのプロセスによって使用される、バッファリングされたファイル I/O のための共有プール)に対して、他のファイルと高い競合性があるシステムの場合、最適な Interbase のパフォーマンスがでない場合があります。 RAM リソースの制限のために、利用可能なシステム ファイル キャッシュが制限される場合、カーネルは、新しいブロック I/O 要求に対してサービス提供する一方で、他のプロセスの使用が終わったメモリ ブロックをこまめにクリーンアップするために時間を費やさなければなりません。
解決方法: このパフォーマンスの問題は、「ダイレクト I/O」(非バッファリング I/O とも言われる)を使用することで緩和されます。これは、ページのブロックが、ディスクからプロセス空間へ直接読み込まれ、システム ファイル キャッシュを使用する必要がなくなるからです。
# gfix {-write {async, sync, direct}] . . .
例:
#gfix -write direct foo.ib -user sysdba -password masterkey
# gbak [-write {async, sync, direct}] . . .
例:
# gbak -write direct -r foo.ibk foo.ib -user sysdba -password masterkey
引数: isc_spb_res_write_mode
用途: データベースの書き込みモードを設定する。 次のバイトは、以下のいずれかでなければならない:
isc_spb_res_wm_asyncgbak -write に相当。
isc_spb_res_wm_sync
isc_spb_res_wm_direct
引数の長さ: 1 バイト
引数の値: バイト
isc_spb_prp_wm_direct を次の引数に追加します:
isc_spb_prp_write_mode
gstat -h foo.ib -user sysdba -password masterkey . . . Database header page information: Flags 0 Checksum 12345 Write timestamp Mar 3, 2011 13:36:31 Page size 8192 ODS version 15.0 . . . Creation date Feb 23, 2011 14:58:27 Attributes force write, direct, no reserve Variable header data: Sweep interval: 20000 *END* . . .
feature is not supported -direct I/O operation
データベースの「ダイレクト I/O」設定は、データベース ページのサイズが、ファイルが存在するディスクのセクタ サイズの、ちょうど倍数である場合にのみ可能です。 ここ数10年における標準は、ハードディスク上で 1 セクタあたり 512 バイトでした。 しかし、最近の新しいディスクでは、1 セクタあたり 4096 バイトの先進フォーマットが採用されつつあります。
InterBase では、次のデータベース ページ サイズをサポートしています: 1024、2048、4096、8192、16384 バイト(1 ページあたり)。 1 ページのサイズが 1024 バイトまたは 2048 バイトのデータベースが、1 セクタ標準が 4096 バイトのみをサポートするハードディスク上にある場合、「ダイレクト I/O」に設定することはできません。データベースに対して「ダイレクト I/O」を有効にする前に、そのようなディスク上では、より大きなページ サイズへとデータベースを復元する必要があります。
非適合デバイスに対して「ダイレクト I/O」を有効に使用とすると、必要な最小データベース ページ サイズを伝える、下のようなエラー メッセージが返されます。 以下は、ディスク セクタ サイズが 4096 バイトの場合のエラー メッセージの例です。
Error: Must backup and restore to DB page size >= 4096 bytes to support direct I/O on this device.
ib_install.exe には 32 ビット版が含まれています。 32 ビット版を Windows 上で使用したい場合には、このインストーラを実行する必要があります。
以下のトピックでは、64 ビット アプリケーションを実装する際に必要な重要な情報を取り上げます。
以下の表に、64 ビット DLL の新しいクライアント ライブラリ名を示します。
| ライブラリ名 | 場所 | メモ |
| ibclient64.dll | /bin | ネイティブ 64 ビット アプリケーション用の新しい InterBase クライアント DLL です。 現在、64 ビット InterBase コマンドライン ツールで使われており、(32 ビット ターゲット用の gds32.dll の代わりに)顧客が作成した 64 ビット アプリケーションと一緒に配置する必要があります。 |
| ibxml64.dll | /bin | ネイティブ 64 ビット アプリケーション用の新しい InterBase XML DLL です。 顧客が作成した 64 ビット アプリケーションで InterBase XML API を使用している場合には、(32 ビット ターゲット用の ibxml.dll の代わりに)アプリケーションと一緒に配置する必要があります。 |
| ib_util64.dll | /bin | ネイティブ 64 ビット アプリケーション用の新しい InterBase UTILS DLL です。 (32 ビット ターゲット用の ib_util.dll の代わりに)顧客が作成した 64 ビット アプリケーションと一緒に配置する必要があります。 |
| ibclient64_ms.lib | /SDK/lib_ms | ibclient64.dll を対象とする 64 ビット アプリケーションを作成するためのインポート ライブラリ。 |
| ibxml64_ms.lib | /SDK/lib_ms | ibxml64.dll を対象とする 64 ビット アプリケーションを作成するためのインポート ライブラリ。 |
| ib_util64_ms.lib | /SDK/lib_ms | ib_util64.dll を対象とする 64 ビット アプリケーションを作成するためのインポート ライブラリ。 |
以下をサポートする新しいインターフェイスが実装されています。
| JDBC 名 | InterClient 名 | 例外/コメント |
| java.sql.Blob | interbase.interclient.Blob |
すべての API で pos パラメータが無視され、1 であると見なされるため、BLOB 全体が返されます。 たとえば、メソッド OutputStream setBinaryStream(long pos) の pos パラメータは無視されます。 "pos" というパラメータを受け取る他のすべてのメソッドでも同様です。 public long position(byte[] pattern, long start) および public long position(java.sql.Blob blob, long start) はサポートされていません。 |
| java.sql.Clob | interbase.interclient.Clob | |
| java.io.inputStream | interbase.interclient IBBlobInputStream |
java.io.inputStream を InterBase の BLOB(および CLOB)用に特別に実装したものです。 データにアクセスするには、このストリームの read() メソッドを使用します。 |
このリリースでは、以下のメソッドが実装されています。
このリリースでは、InterBase データベースに対する強度の高いパスワード保護が実装され、PCI DSS(Payment Card Industry - Data Security Standard:PCIデータセキュリティ基準)のパスワード要件を満たすようになっています。 この追加機能では、パスワードの有効文字数が増えるため、パスワード保護が強力になります。
DES-CRYPT パスワード アルゴリズムの代わりに、民間組織でも政府機関でも広く使われている最新の暗号ハッシュ関数が採用されました。 この設計では、160 ビット固定長のハッシュを生成する SHA-1 を使用しています。
isql admin.ib -user SYSDBA -pass xxxxxxx sql> ALTER DATABASE SET PASSWORD DIGEST 'SHA-1'; sql> CREATE DOMAIN PASSWORD_DIGEST AS VARCHAR(16) CHARACTER SET ASCII; sql> ALTER TABLE USERS ADD PASSWORD_DIGEST PASSWORD_DIGEST; sql> UPDATE USERS SET PASSWORD_DIGEST = 'DES-CRYPT'; sql> COMMIT;
メモ: InterBase を初めてインストールするのであれば、この SQL コマンドを実行する必要はありません。
ALTER DATABASE コマンドを実行できるのは、データベース所有者か SYSDBA だけです。 このコマンドを実行すると、RDB$DATABASE.RDB$PASSWORD_DIGEST が "SHA-1" という文字列値に変更されます。 これは、USERS テーブルに含まれる新規または既存のユーザー アカウントに対する新しいパスワード ハッシュの生成が、すべて SHA-1 ハッシュ関数を使って行われることを意味します。
同じ DDL を以下のように実行すると、パスワード ハッシュ関数を DES-CRYPT に戻すことができます。
ALTER DATABASE SET PASSWORD DIGEST 'DES-CRYPT';
これで、admin データベースは、新規ユーザー アカウントの追加や既存アカウントのパスワードの変更の際に、最大 32 バイトまで有効なプレインテキストのパスワードに対して SHA-1 パスワード ハッシュを生成するようになります。
GSEC [add | modify]、IBConsole、および IB サービス API では、SHA-1 パスワード ハッシュ アルゴリズムをサポートしています。 これらのどのツールを使っても、サーバー レベルのユーザー アカウントのパスワードを保守できます。 既存ユーザー アカウントのパスワードを変更した場合、そのユーザーは新しい IB クライアント ライブラリを使ってサーバーにログインしなければなりません。
注意: パスワード ハッシュを SHA-1 に変換した後で、変換済みの admin.ib データベースをバックアップし、それを古い IB エンジンで復元すると、下位互換性の問題が発生します。 古い IB エンジンは異なるパスワード ハッシュを理解しないため、復旧不能なログイン エラーが生じます。
64 ビット版 InterBase でデータベース キャッシュ設定に指定できる値が大きくなりました。 32 ビット版エンジンでは上限が 750K ページでしたが、64 ビット版エンジンでは 7500 万ページになりました。
InterBase XE で EXECUTE STATEMENT 機能をサポートするようになりました。
この機能によって、InterBase のストアド プロシージャ言語が強化されています。 これが実装されると、ストアド プロシージャの開発時に 3 種類の EXECUTE STATEMENT をストアド プロシージャ内に埋め込むことができます。 この種類は、EXECUTE STATEMENT コマンドから返される行の数によって分かれています。 3 つの種類は次の通り: データ行が返されないもの、データが 1 行だけ返されるもの、複数のデータ行が返されるもの。
データ行が返されないもの
EXECUTE STATEMENT <statement> <statement> ::= データ行を返さない SQL 文例:
CREATE PROCEDURE EXEC_STMT_NO_RET (proc_name varchar(20)) AS DECLARE VARIABLE EMPNO INT; DECLARE VARIABLE EXECSTMT; BEGIN SELECT MAX(EMP_NO) from EMPLOYEE into EMPNO; EXECSTMT = 'EXECUTE PROCEDURE' || proc_name || '( ' || cast (EMPNO as varchar(10)) || ')'; EXECUTE STATEMENT EXECSTMT; END
データが 1 行だけ返されるもの
EXECUTE STATEMENT <select-statement> INTO :<var>[, :<var>..] <select-statement> ::= データが 1 行だけ返されるかまったく返されない SQL 文 <変数> ::= 有効なプロシージャ変数。":" は省略可能例:
CREATE PROCEDURE EXEC_STMT_SINGLETON (TABLE_NAME VARCHAR(50)) AS DECLARE VARIABLE MAXEMPNO BEGIN EXECUTE STATEMENT 'SELECT MAX(EMP_NO) FROM' || TABLE_NAME INTO :MAXEMPNO; SUSPEND END
複数のデータ行が返されるもの
FOR EXECUTE STATEMENT <select-statement> INTO :<var> [, :<var> ..] DO <compound-statement> <select-statement> ::= データが 1 行だけ返されるかまったく返されない SQL 文 <変数> ::= 有効なプロシージャ変数。":" は省略可能
CREATE PROCEDURE EXEC_STMT_ANY (TABLE_NAME VARCHAR(50), INT_FIELD INTEGER)
RETURNS
(INT_RETVAR INTEGER)
AS
DECLARE VARIABLE IFIELD INTEGER
BEGIN
FOR EXECUTE STATEMENT
'SELECT' || INT_FIELD || 'FROM' || TABLE_NAME INTO :IFIELD
DO
IF (IFIELD = 0) THEN
INT_RETVAR=0;
ELSE
INT_RETVAR = INT_RETVAR+IFIELD;
SUSPEND;
END
以下の表に追加された新しいエラー メッセージを示します。
| SQL コード | エラー番号 | エラー メッセージ |
| -204 | 335544850 | EXECUTE STATEMENT could not prepare statement : <string> (EXECUTE STATEMENT でステートメント <string> を準備できませんでした) |
| -204 | 335544851 | SQL statement invalid as it returns no records. SQL : <string>(SQL 文 <string> はレコードを返さないため無効です) |
| -204 | 335544852 | Parameter mis-match for the statement : <string>(ステートメント <string> のパラメータが一致しません) |
| -204 | 335544853 | Could not execute statement : <string>(ステートメント <string> を実行できませんでした) |
| -204 | 335544854 | EXECUTE STATEMENT fetch error (EXECUTE STATEMENT の取り出しエラー) |
| -204 | 335544855 | EXECUTE STATEMENT in this form must return single row, not multiple rows. (この形式の EXECUTE STATEMENT では、複数行ではなく 1 行だけを返さなければなりません) |
| -204 | 335544857 | Sql statement not allowed in EXECUTE STATEMENT : <string>(EXECUTE STATEMENT では SQL 文 <string> を実行できません) |
EXECUTE STATEMENT を使用する場合には、以下の点に注意してください。
この機能は InterBase XE でのみ提供されており、下位互換性はありません。
データベースをスイープすることで、古いレコードを系統立てて削除することができます。 定期的にスイープを実行すると、データベースのサイズが大きくなりすぎるのを防ぐことができます。 これまではスイープ処理を行うとシステムのパフォーマンスが低下していたため、ユーザーは本番運用に影響が出ないよう、自動データベース スイープ機能を無効化していました。
InterBase データベースは定期的にスイープを行う必要があります。 行わなければ、各トランザクションのビットマップに割り当てられるメイン メモリが増大し、容認できないレベルまでパフォーマンスが悪化してしまいます。 スイープが完了するまでの時間が長引くほど、新しいトランザクションを開始するのに必要なメイン メモリの量が増大します。
InterBase XE で高速スイープの最適化が実装されたことで、メモリ割り当ての問題が軽減されました。 そのため、ユーザーはデータベースに自動スイープを構成するという選択ができるようになりました。 データベースのサイズが大きくても、アーカイブ テーブルが大きかったり、テーブルが頻繁に更新されない場合には、実行中のトランザクション操作のパフォーマンスに対するデータベース スイープの影響はごくわずかです。
この機能を有効化するための新しいユーザー インターフェイスはありませんし、ユーザーが行わなければならない作業もありません。 gfix コマンド ライン ツールや IBConsole やプログラムで起動される手動スイープでも、データベースに構成された自動スイープでも、高速スイープ メカニズムが使用されます。
データベースは作成またはバックアップ後、ODS 15 に復元する必要があります。
ブロック化因数という用語は、1 つのブロックに格納されるレコードの数を表します。 InterBase では、1 つのデータ ページに格納できる行数を最大にするための、データベース レベルのブロック化因数を 1 つ持っています。
InterBase XE では、ODS 15 データベースにテーブル固有のブロック化因数が導入され、1 つのデータ ページに格納できる行数を最適化したり、行に割り当てられる行番号を最小化することができるようになっています。 さらにこのエンジンでは、多くの実行時データ構造のサイズも最小化されています。 非常に多くの行を格納していて、多数のデータベース接続からアクセスされるデータベースの場合には、メモリ消費が増えすぎる可能性があるため、これは非常に重要です。
格納されている行数が非常に多いテーブルや多くなることが予想されるテーブルでは、テーブル固有のブロック化因数が有効です。 そのようなテーブルで、同じレコード番号の領域により多くの行を格納でき、しかも実行時に取得するデータ構造に必要なメモリが減るためです。
この機能を有効化するためのユーザー インターフェイスはありませんし、ユーザーが行わなければならない作業もありません。 テーブル固有のブロック化因数は、データベース復元後に自動的に設定されます。
個々のテーブルのブロック化因数の値は、次のシステム列で確認できます。
テーブルにテーブル固有のブロック化因数がなければ、このシステム列は NULL になります。 このブロック化因数は、データベースの復元を行うたびに、実際に復元される行データに合わせて再調整されます。 そのため、データベースが変更され、バックアップや復元が行われていく中で、この値が変化していく可能性があります。
ODS 15 データベースを作成してデータを追加した後、バックアップを取って復元すると、テーブル固有のブロック化因数が設定されます。
ODS 15 データベースでは、インデックス キーのサイズの上限が引き上げられています。 列がシングルバイト キャラクタ セットかマルチバイト キャラクタ セット(UTF8 など)かを問わず、サイズの大きい列データでこの機能を使用できるようになりました。
InterBase XE では、UTF8 やその他複数のマルチバイト キャラクタ セットをサポートしているため、上限が引き上げられました。 たとえば、4 バイトの UTF8 文字を使用しているシングルカラム キーであれば、4 KB のページ サイズで 1020/4 = 254 個の UTF8 文字が使える計算になります。
ODS 15 データベースでは、自動的にインデックス定義を行うことができ、そのキー サイズはデータベース ページ サイズに左右されます。
この機能が有効なエンジンで作成したデータベースは、古いバージョンの InterBase に戻すことができません。
また、ページ サイズを小さくしてデータベースを復元しようとした場合に、キー サイズの大きいインデックスが上記で指定された上限に収まらなければ、処理は失敗します。
この機能を有効にするためのユーザー インターフェイスはありませんし、ユーザーが行わなければならない作業もありません。 データベースの復元を行うたびに、インデックスも再作成されます。
ODS 15 以降のデータベースだけが、サイズの大きいインデックス キーをサポートしています。 この機能を使用するには、データベースを ODS 15 に復元してください。 252 バイトより小さいサイズの他のインデックスは、ディスク上の格納方法が変わらないため、問題ありません。
InterBase XE でデータベースを復元すると、"unassigned code(割り当てられていないコード)" というエラーが出力されます。 長く使われているデータベースや、InterBase 2009 でバックアップして InterBase XE で復元したデータベースでは、メタデータ セキュリティの設定が異なります。 そのため、システム テーブル(RDB$RELATIONS など)に対して SELECT 文を実行すると、"no permission for read/select access to table RDB$RELATIONS by user SYSDBA(ユーザー SYSDBA は RDB$RELATIONS の読み取り/検索アクセスを行う権限がありません)" というエラー メッセージが出力されます。
このエラーは、次の基準に当てはまるデータベースで発生します。
このような動作が生じるのは、データベースの復元を行うときに、InterBase XE ではメタ データ権限が厳密に適用されるためです。
解決方法:
この問題を解決するには、データベースをバックアップする前に、データベースに対して readmeta.sql を実行します。readmeta.sql は、通常、
説明:
長い間使われているデータベースでこの問題が発生します。 (1)データベースが IB6 -> IB7 -> IB2007 -> IB2009 -> IBXE と復元されてきた、(2)データベースが IB2009 でバックアップされて IBXE で復元された、という 2 つの状況が考えられます。 それぞれの状況で、メタデータ セキュリティ設定は異なります。 (1)の場合は、最初に IB6 で作成されているため、そもそもメタデータ セキュリティが設定されていません。 それに対して(2)の場合には、IB2009 で作成されているため(復元はされていません)、すべてのシステム テーブルにあらゆるセキュリティ権限が設定されています。
前者の場合、データベースはバックアップと復元が繰り返され、新しいリリースになるたびに、そのリリースで追加されたシステム テーブル(RDB$USERS、RDB$ENCRYPTIONS、RDB$ROLES など)の権限が設定されます。 ただし、元々存在するシステム テーブルについては、データベース所有者が既にセキュリティ権限を変更しているかどうかを判断できないため、変更は行われません。 たとえば、ユーザーが RDB$TRIGGERS および RDB$PROCEDURES に対する権限をすべて取り消して、トリガーやストアド プロシージャのコードを隠していることも考えられます。
また、前者の場合には、何年も前に SYSDBA が readmeta.sql を実行し、その基準のメタデータを変更してカスタム セキュリティ プロファイルを作成している可能性もあります。 XE の復元の後で InterBase が自動的に既定値に戻して、そのカスタマイズを上書きすることはできません。 InterBase XE では、個々のデータベースのこれまでの履歴を把握していないため、復元するすべてのデータベースに無条件にデフォルトのメタデータ権限を設定するべきだと想定することはできません。
そのため、readmeta.sql を実行し、そのデフォルト値を出発点として望ましい状態に構成することをお勧めします。 これは、移行先が XE 以外の場合でも同じです。
isql の使用例:
isql "path to database" -user sysdba -password masterkey -i readmeta.sql
IBConsole での readmeta.sql の実行
InterBase 6.5 より前のバージョンで最初に作成されたデータベースで、"no permission for read/select access to table RDB$XXXX by user SYSDBA with InterBase XE"(ユーザー SYSDBA は InterBase XE でテーブル RDB$XXXX の読み取り/検索アクセスを行う権限がありません) というエラーが発生する可能性があります。
解決方法:
InterBase XE ではメタ データのセキュリティが厳しくなっているため、バージョン 6.5 よりも前の InterBase で最初に作成されたデータベースに対してメタ データ操作を行うと、このエラーが出力される可能性があります。 メタ データ操作には、システム オブジェクトの一覧の作成などシステム オブジェクトの情報を要求する、それを更新する、パフォーマンス モニタを使用する、といったものがあります。
このエラーを解決するには、よく似た 2 つの操作を実行する必要があります。 最初の操作では、システム テーブルに対する権限を付与します。 そのためには、InterBase インストール ディレクトリの examples\security フォルダにある readmeta.sql を実行します。isql または IBConsole を使用して、readmeta.sql をデータベースに対して実行することができます。
isql の使用例:
isql "path to database" -user sysdba -password masterkey -i readmeta.sql
IBConsole での readmeta.sql の実行
次に、パフォーマンス監視機能を使用する場合には、システム一時テーブルに対する権限を付与する必要があります。 セキュリティ上の問題が起きる可能性があるため、ほとんどのインストールでは、システム一時テーブルに対する権限を sysdba およびデータベース所有者にしか付与しないようになっています(以下で紹介しているのはそれです)。 すべてのユーザーがシステム一時テーブルを閲覧できるようにするには、この例を GRANT TO PUBLIC に変更してください。 特定のユーザーだけに権限を付与したい場合もあるでしょう。そのときにはさらにカスタマイズされたスクリプトが必要になる可能性があります。
システム一時テーブルに対する権限を付与するには、以下のコードをテキスト ファイルに保存し、上記の readmeta.sql と同様に実行してください。
create procedure granttmp as
declare variable stmt varchar(1024);
declare variable ownername varchar(66);
declare variable tablename varchar(66);
begin
select rdb$owner_name from rdb$relations where rdb$relation_name = 'RDB$RELATIONS'
into :ownername;
for select rdb$relation_name from rdb$relations where rdb$system_flag>0 and rdb$relation_name starts with 'TMP$' into :tablename do
begin
stmt = 'grant all on ' || tablename || ' to sysdba';
execute statement stmt;
stmt = 'grant all on ' || tablename || ' to ' || ownername;
execute statement stmt;
end
end;
execute procedure granttmp;
drop procedure granttemp;
commit;
exit;
UNICODE_LE と UNICODE_BE (いずれも 16 ビットの UNICODE 文字セット)は、サーバーの文字セットとしてのみ使用できます。 これら 2 つの文字セットはクライアントの文字セットとしては利用できません。 クライアントで UNICODE 文字を完全にサポートする必要がある場合、クライアントのキャラクタ セット(別名 LC_CSET)には、UNICODE_LE や UNICODE_BE ではなく UTF8 を使用してください。 クライアントは、UTF8(またはその他のネイティブな)クライアント文字セットを使用して、UNICODE データベースに接続できます。
InterBase XE の今回のリリースでは、定義済み UNICODE 照合はサポートされません。 UNICODE のデフォルトの照合はバイナリ ソートの順番です。
InterBase サーバーがクラッシュすると、Windows エラー報告(WER)ダイアログが間欠的に現れます。
解決方法: 弊社では、把握しているクラッシュを修正するよう努力しています。 それまでの間は、Windows レジストリを変更すると、Windows エラー報告ダイアログが現れないようにすることができます。 レジストリ属性 HKEY_CURRENT_USERS\Software\Microsoft\Windows\Windows Error Reporting\DontShowUI の値を 1 に設定すると、表示されなくなります。 これは、MSDN の記事 http://msdn.microsoft.com/en-us/library/bb513638(VS.85).aspx で推奨されている方法です。 今後のビルドでは、ibserver.exe 内からオプションを構成して、InterBase サーバーのバイナリの場合にだけダイアログを表示しないよう WER を設定できるようにすることを検討しています。
次のバグが InterBase XE で解決されました。
| バグ番号 | QC 番号 | 説明 |
| InterBase XE Update 3: 2011年8月、バージョン 10.0.3 で修正されたバグ | ||
| INTB-1215 |
この問題番号には、本リリースにおける IBConsole 関連のすべての修正がリストされています: 97534 Interactive SQL において列暗号化に対してパスワードを入れると、アクセス違反エラー メッセージが表示される。 97480 復号化するために列を変更すると、エラー メッセージが表示されるが、列は復号化される。 96412 IBConsole からサーバを開始すると、サーバーが開始できない旨のエラー メッセージが表示される(実際には、サーバーが実行されていても)。データベースに接続すると、AV エラー メッセージが表示される。 89388 IBConsole の [Tools] メニューから、[New Connection] オプションを使用すると、AV エラー メッセージが表示される。 67161 デフォルト文字セットを設定するためのコンボボックスに、UTF8 がない。 97683 RDB$DESCRIPTION フィールドの値を見る際に開くメモ ダイアログ ボックスは、読み取り専用であるべきではない。 |
|
| INTB-1210 | DES 暗号化キーを使用するデータベースに対する、バックアップ/復元操作の向上に対する改善要求(サービスとしてのみ利用可能)。 | |
| INTB-1208 | ISQL Extract (-x/-a) オペレーションは、ユーザー認証パラメータを考慮しない。 | |
| INTB-1204 | Linux 上の InterBase サーバーが、長時間におよぶ使用の後、接続へのアクセスを停止してしまう。 | |
| INTB-1178 | データベースを -i で復元した後で、バックアップ時に Blob エラーが発生する。 | |
| INTB-1162 | ロールへのメンバ追加が、IBConsole で機能しない。 | |
| INTB-1149 | サイレント インストーラが、c:\Program Files へのインストールを許容する。 | |
| INTB-1148 | 64 ビット インストーラが、InterBase ルート ディレクトリをレジストリに書き込む際に、ディレクトリ名に空白文字が入っていると失敗する。 | |
| INTB-1141 | InterClient は、isc_deadlock など、特定の IB エラー コードを表示しない。 | |
| INTB-1133 | データベース エイリアスが、Windows 上でのローカル接続で機能しない。 | |
| INTB-1130 | 94120 | interbase.msg が、クライアントのみのインストール時に見つからない。 |
| INTB-1124 | 94455 | SQL Unicode 文字型の失敗。 |
| INTB-1115 | IBConsole データベース暗号化ウィザードが動作しない。 | |
| INTB-1105 | GFIX が、一度に 2 つのスイッチを指定した際に、2 つ目のスイッチが Write または Validate だと動作しない。 | |
| INTB-1099 | GFIX が、一度に Buffers および Write モードを設定すると、データベースに対する書き込みモードを変更しない。 | |
| INTB-1092 | 93524 |
データベース ファイルのパスにスペースがあり、かつ、InterBase Services を使用していると、GBAK に失敗する。 ファイルのパス名にスペースがあり、かつ、InterBase サービス マネージャ(GBAK では -service スイッチ)を使用している場合、ファイル名を、多重引用符で囲む必要があります:
上記のような作業が必要になるのは、コマンド シェルが常に外側の 2 重引用符(")を取ってしまうためです。内側の単一引用符(')のみが InterBase が認識できる形で残り、これが一続きの文字列値だと認識されます。
例: |
| INTB-1090 | 名前(区切られた識別子)に空白のあるデータベース エンティティ(プロシージャ、テーブル、暗号)が、アクセス権限を設定/確認する際に切り詰められる。 | |
| INTB-1080 | ToGo エディションが、 IBX コンポーネントを使用した、Delphi アプリケーションからのバックアップ/復元サービス実行の最後でクラッシュする。 | |
| INTB-1066 | dbExpress を使用する Delphi XE ビルド アプリケーションが、テキスト Blob の取得時に、InterBase サーバーのクラッシュを引き起こす。 | |
| INTB-1007 | DataDirect ODBC ドライバが、Dialect 3 を無視する。 | |
| InterBase XE Update 2: 2011年3月、バージョン 10.0.2 で修正されたバグ | ||
| INTB-1054 | XE クライアントの互換性の問題(暗号化とサービス マネージャで)。 | |
| INTB-1052 | 90926 | データベースが UDF を使用するストアド プロシージャを保有していると、"Show Procedures" コマンドが発行された際に ISQL がクラッシュする。 |
| INTB-1051 | 92451 | テキスト Blob フィールドでグループ化されたステートメントを実行する際、Blob データの長さが 126 バイトを超えていると、サーバーがクラッシュする。 |
| INTB-1035 | AppWave データベース バックアップの復元ができない。 | |
| INTB-1033 | join または left join を伴うクエリのカウントが、0 を返す。 | |
| INTB-1031 | EVENT 動作の不整合。 | |
| INTB-1015 | 不正な形式のパケットに対するサーバーの脆弱性。 | |
| INTB-1008 | ユニオンを元にパラメータ化したクエリが、2 度目に実行された際に行を返すのに失敗する。 | |
| INTB-1004 | InterBase XE Japanese InstallAnywhere インストーラが、不正なレジストリのエントリを作成する。 | |
| INTB-1000 | 90879 | InterBase サーバーが、データベース復元の後の検証フェーズでクラッシュする。 |
| INTB-998 | 90582 | OUTER JOIN クエリが、InterBase XE (および InterBase 2009 で特に)誤った結果を返す。 |
| INTB-985 | NAT ルーターの背後のサーバーに対して処理されるイベントへの、2 番目の接続確立ができない。 | |
| INTB-954 | 89559 | 大量の AND や OR 節のあるクエリで、サーバーがクラッシュすることがある。 |
| INTB-912 | TCS: EX_NUM_ARRY_01 が、MacOS 10.6 上で ibserver をクラッシュさせる。 | |
| InterBase XE Update 1: 2010年12月、バージョン 10.0.1 で修正されたバグ | ||
| INTB-890 | Sysdba は、readmeta.sql が適用されていない InterBase 6.0 以前で作成されたデータベースに対して、メタデータの権限がありません。 Raid 280556 は、これと同じ問題です。 | |
| INTB-860 | 外部キーを追加すると、特定のデータベースで InterBase がクラッシュします。 | |
| INTB-853 | SELECT count() が BIGINT を返します – 既存のドライバ/アプリケーションとの互換性の問題。 | |
| INTB-839 | 88501 | ジャーナル機能を備えたデータベースで挿入が行われている間にスイープを実行すると、サーバーがハングアップしデータベースが破損します。 |
| INTB-824 | InterBase サービス マネージャを使って統計情報のクエリーを実行する際に InterBase XE 64 ビット サーバーが クラッシュする問題の調査。 | |
| INTB-822 | RAID 280541: 複雑なメタデータ スクリプトを持つ ODS 13.1 データベースでサーバーがクラッシュします。 | |
| INTB-818 | 88241 | 複数の接続の場合に gds ソフトウェアの内部一貫性チェックがエラー("can't find shared latch (300)")になります。 |
| InterBase XE: 2010年11月、バージョン 10.0.0.304 で修正されたバグ(UNIX ビルド) | ||
| INTB-791 | Java アプリケーションで OTW ポートに対して接続/接続解除/操作を行うと、ほとんどの場合、IBSever が "SSL_READ: SSL_ERROR_ZERO_RETURN" のエラーを出力します。 これは害のない問題で、他に機能上の問題を引き起こすことはありません。 | |
| INTB-756 | IBConsole: F5 キーを押すとクラッシュします。 | |
| INTB-661 | 62444 | RAID 260610: サンプルは UNIX でビルドされますが、正常に動作しません。 |
| INTB-673 | 57839 | RAID 279453: LEFT JOIN オペレーションが、誤った結果を返す。 |
| INTB-546 | 74055 | パラメータの誤ったディスクリプタの長さが、UDF 内部に表示される。 |
| InterBase XE: 2010 年 9 月、Windows 版 | ||
| INTB-772 | 37729 | RAID 279996: 疑問符で始まるパスワードを作成または変更しようとすると、エラーが発生します。 |
| INTB-675 | ネットワーク接続が失われた状態でクエリーを実行しようとすると、(SQL エラー メッセージではなく)NullPointerException が送出されます。 | |
| INTB-671 | 79851 | RAID 273825: getMetaData().getPrecision() が誤った値を返します。 |
| INTB-670 | 48152 | RAID 251980: 2 つのストアド プロシージャの結合で "算術演算例外" のエラーが発生します。 |
| INTB-669 | 81786 | RAID 278498: 要求の混在領域のサイズが現在の 256K 制限からより大きい値に増えます。 |
| INTB-659 | 62255 | RAID 260612: "SHOW FUNCTIONS" コマンドを入力するとすぐに QLI がクラッシュします。 |
| INTB-654 | 50375 | RAID 260671: 複数ファイルでの OnlineDump。 |
| INTB-653 | 55499 | RAID 260629: 一方のテーブルの VARCHAR フィールドからもう一方のテーブルの BLOB に挿入すると、挿入先のテーブルに不要なデータが付加されます。 |
| INTB-650 | テーブル/ビュー TableName に対しては、権限付与オプション付きの T 権限はありません。 | |
| INTB-597 | 2311 77931 |
RAID 146832: DATE 列のインデックスを使った ORDER BY で順序の間違いが発生します。 |
| INTB-547 | 365 | RAID 279571: SYSDBA でないデータベース所有者による SELECT が、テーブルに対する権限が許可されていても失敗します。 |
| INTB-538 | RAID 273806: InterBase 2007 Service Pack による変更以降、結合でのオプティマイザの機能が低下します。 | |
| INTB-523 | 77315 | COALESCE 関数と集計関数。 |
| INTB-513 | RAID 191536: 配列と BLOB の場合に java.sql.DatabaseMetaData.getColumns() メソッドが間違ったデータ型を返します。 | |
| INTB-493 | PreparedStatement.executeBatch() を呼び出すと IndexOutOfBoundsException が送出されます。 | |
| INTB-402 | データベースの予期しない動作がいつまでも続きます。 | |
| INTB-355 | SQLDA/SQLVAR でのパラメータ化されたクエリーのパラメータ順序が疑問符の外見上の順序と異なります。 | |
| INTB-319 | InterBase 2007 SP3 での修正により、オプティマイザの機能が低下するおそれがあります。 | |
| INTB-267 | JDBC アプリケーションからのデータベース作成("CREATE DATABASE")で、要求されたキャラクタ セットが順守されません。 | |
| INTB-264 | RAID 272543: RDB$FILTERS にフィルタ名の一意なインデックスがないため、フィルタの重複につながります。 | |
| INTB-253 | RAID 270024: InterBase では、Large Address Aware フラグを設定していても、2 GB を超えるデータベース キャッシュを使用できません。 | |
| INTB-236 | RAID 271600: 負荷の大きい 8 コア システムで "Request Synchronization error"(要求の同期エラー)が報告されます。 | |
| INTB-235 | RAID 270959: ODS 10.x データベースにアクセスすると、サーバーがクラッシュします。 | |
| INTB-151 | RAID 269627: 同じ "アドオン" パッケージに属する一意なスーパーキーのライセンス ファイルがすべて、ライセンス エンジンで読み込まれません。 | |
| 3424 | テーブルやプロシージャの [データベース名 - オブジェクト名 のプロパティ] フォームを開き [許可] タブを選択すると、列見出しがまれにしか表示されません。 別のタブを選択してから [許可] タブに戻ると、列見出しは表示されます。 | |
| 4989 | DATE 型のパラメータを持つ UDF を追加すると、その UDF は作成されますが、その UDF のプロパティを表示しようとすると、"unsuported Datatype"(データ型がサポートされていない)というメッセージが IBConsole に表示されます。IBConsole ではその UDF を削除できません。 この UDF は isql では正常に機能し、isql で削除できます。この現象は TIMESTAMP と TIME の場合にも発生します。 | |
| 6714 | InterBase データベースにテーブルを作成し、そこにデータを入れます。 そのあと、IBConsole を使ってテーブルをコンマ区切り値ファイルにエクスポートすると、エクスポートはうまくいきます。 エクスポートしたファイルを MS Excel を使って確認すると、問題なさそうです。 その次に、テーブルを空にします。 しかし、テーブルのエクスポート先の .csv ファイルからデータをインポートしようとすると、"Access Violation at address xxxxxxxx in module 'IBConsole.exe' Read of address 000000000"(モジュール 'IBConsole.exe' のアドレス xxxxxxxx でアクセス違反が発生。アドレス 000000000 の読み取り)というメッセージが出力されます。 これは、どのような .CSV ファイルからデータをインポートしようとしても発生します。 | |
| 63968 | データベースの復元が失敗します: "No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません) | |
| 68637 | IBConsole でデータベースの復元を行えません。 | |
| 74598 | IBConsole.xml ファイルが格納されているディレクトリの名前の綴りが間違っています。 | |
| 75028 | ドメインのデータ型を変更しようとしたとき、エラーが表示されます。 | |
| 76342 | 22 文字より長いメタデータ名が切り詰められます。 | |
| 76616 | 対話型 SQL から別のユーザーとして接続しようとすると、接続ウィンドウは開きますが、別のユーザーとして接続せず、エラー メッセージが表示されます。 | |
| 76622 | 対話型 SQL を使ってデータベースから接続解除したあと、そのデータベースに再接続しようとすると、エラー メッセージが表示されます。 | |
| 79418 | IBConsole を使用してジャーナルやジャーナル アーカイブの作成およびデータベースのアーカイブ化を行うとき、[データベースのアーカイブ化] オプションを選択するとエラー メッセージが返されます(これはどのような種類の接続でも失敗します)。 | |
| 79420 | 対話型 SQL を使ってデータベースのジャーナル、ジャーナル アーカイブ、データベース アーカイブを作成するとき、[データベースのアーカイブ化] オプションを選択すると、データベースから接続解除したあとデータベースに再接続しても表示が更新されません。 | |
| 80580 | IBConsole でテーブルを開くとエラーになります。 | |
| 81324 | IBConsole での対話型 SQL: RDB$ 名が切り詰められます。 | |
| 82503 | 対話型 SQL を使ってデータベースのあとにジェネレータを作成すると、エラーが表示されます。 その場合は、[タスク マネージャ] を使用してプロセスを終了させる必要があります。 | |
| 82706 | NULL になる可能性のあるフィールドを主キー制約の定義で使用したあと、そこから削除すると、エラーが表示されます。 | |
| 82776 | エントリ ポインタが 67 文字より長い外部関数を作成すると、不明なエラー メッセージが表示されます。 | |
| 82829 | ビューを変更して 2 番目の列を追加すると、テーブル名が誤って付加されます。 | |
| 82859 | 別の変数と同じ名前のローカル変数を追加してトリガーを変更したあと、元どおりに戻そうとしてもできません。 | |
| 82904 | BLOB フィルタの [入力サブタイプ] に 10 桁より大きい値を指定すると、エラー メッセージが表示され、[BLOB フィルタ エディタ] ウィンドウが閉じます。 | |
| 83369 | [ツール] メニューから [接続の新規作成] オプションを選択して別のデータベースに接続したあとクエリーを実行すると、IBConsole が終了します。 | |
| 83370 | IBConsole の [ツール] メニューからライセンス マネージャを表示しようとすると、エラー メッセージが表示されます。 | |
| 83820 | 重複する名前の BLOB フィルタを作成しようとすると、[キャンセル] ボタンが機能しません。 | |
| 83881 | 既に存在する名前のデータベースを作成するとき、[キャンセル] ボタンが機能しません。 | |
| 84783 | プロシージャやトリガーの名前フィールド内にフォーカスがあっても、そこにテキストをコピーできません。そのテキストは本体の入力領域には追加されます。 | |
| 84934 | IBConsole を使用してデータベースを暗号化したあと、該当する暗号化を暗号化のシステム テーブルから削除し EUA の値を変更すると、AV エラー メッセージが表示されます。 | |
| 85054 | IBConsole を使ってデータベース スイープを実行するとき、確認メッセージのテキストが正しく配置されません。 | |
| 85104 | InterBase XE の場合、IBConsole の [ツール] メニューからライセンス マネージャが開かずに、AV エラー メッセージが表示されます。 | |
| 85514 | IBConsole を使用してコミットせずにクエリーをいくつか実行するとき、データベースから接続解除すると AV エラー メッセージが表示されます。 | |
| 86294 | IBConsole を使って SYSDSO としてデータベースに接続し、ユーザーが SELECT 権限を持っているテーブルのデータを表示しようとすると、エラー メッセージが表示されます。 | |
| 86737 | [EUA ユーザー名] オプションと [EUA パスワード] オプションを [データベースの復元] に追加する必要があります。 | |
| 86739 | IBConsole では、大文字と小文字が区別されるキャメルケースの新しい OTW パラメータ名を(IB OpenSSL クライアントに)使用しなければなりません。 | |
| 86749 | SELECT COUNT(*) と SELECT AVG は SQL_INT64 型の値を返すはずです。 32 ビット整数型のローカル変数を使用してこの値を受け取るコードが IBConsole にある場合は、64 ビット整数型に変更しなければなりません。 | |
| 86924 | IBConsole では、バックアップ ファイルのパスは完全パスでなければなりません。 | |
| ドキュメント更新: 2010 年 9 月、Windows 版 | ||
| INTB-773 | 『言語リファレンス ガイド』 第 3 章: 「WHEN ... DO」。 "GDSCODE errcode" の説明を更新しました。 また、GDSCODE の正しい使用法を反映するように 表 5.5 も更新しました。 | |
| INTB-769 | 『操作ガイド』: 付録 B の 表 B.1「InterBase の仕様」。 外部テーブル ファイルの最大サイズの説明を更新しました。 | |
| INTB-744 | 『開発者ガイド』: 第 14 章: 「データセット コンポーネント メソッドによるキャッシュ更新の適用」。 古いプロシージャ例を新しい IBTransaction1 の例に差し替えました。 | |
| INTB-739 | 『言語リファレンス ガイド』 第 6 章の表 表 6.34。RDB$USERS テーブルを追加しました。 | |
| INTB-736 | 『埋め込み SQL ガイド』: 第 13 章: トピック: 「SQL データ型マクロ定数」。 sqlsubtype の設定に関する情報を更新しました。 | |
| INTB-735 | 『開発者ガイド』: 第 6 章の表 表 6.7。 整数の情報を更新しました。 | |
| INTB-734 | 『API ガイド』: 第 3 章: 「InterBase で使用される環境変数」。 2 つの新しい変数 IB_PROTOCOL と INTERBASE を追加しました。 | |
| INTB-733 | 『言語リファレンス ガイド』 第 6 章の表 トピック: 「RDB$DATABASE」。 記載漏れのフィールドを表 6.5 に追加しました。 | |
| INTB-731 | 『言語リファレンス ガイド』 第 2 章: 「ALTER TABLE」、「ALTER DATABASE」、「CREATE ENCRYPTION」、「CREATE TABLE」。 各トピックに次のメモを追加しました: 「暗号化と暗号化解除の詳細は、『データ定義ガイド』の第 13 章の「データの暗号化」と「データの暗号化解除」を参照してください。」 | |
| INTB-728 | 22384 | 『操作ガイド』: 第 4 章: トピック 「ibmgr でのサーバーの起動と停止」。 InterBase ユーザー アカウントで InterBase を起動する方法の説明を更新しました。 |
| INTB-726 | 『API ガイド』: 第 5 章: 新しいトピック: 「マルチデータベース トランザクションでのコミット/ロールバックの使用」 | |
| INTB-725 | 『開発者ガイド』: 第 6 章の表 「dsc_flags の説明」。 DSC_systems の情報を表 6.5 に追加しました。 | |
| INTB-723 | インストールの情報を更新しました。 Desktop Edition と ToGo Edition のセットアップは Windows OS の場合にのみ可能です。 | |
| INTB-722 | 『埋め込み SQL ガイド』: 第 6 章の表 トピック 「式での比較演算子の使い方」。 式で使用できる比較演算子の一覧を示す表 6.4 を追加しました。 | |
| INTB-720 | 5253 | RAID 171696。 『開発者ガイド』: 『開発者ガイド』第 4 章のトピック「JDBC の InterClient 拡張へのアクセス」。 JDBC ドライバ オブジェクトをキャストする方法の適切な例を追加しました。 |
| INTB-719 | RAID 259389。 isc_dpb_archive_journals と isc_dpb_archive_database が記載されていません。 | |
| INTB-718 | RAID Issue 217986: 『操作ガイド』: 付録 A: トピック: 「InterBase の新しいキーワード」。 InterBase 7.5 以上で導入された新しいキーワードの記載が必要です。 | |
| INTB-515 | 『操作ガイド』の PDF(ページ 5-10 から 5-12)に、InterBase ネイティブ アプリケーションと JDBC アプリケーションで使用できるさまざまな OTW パラメータが詳しく説明されています。 InterBase XE では、従来の名前付きパラメータは表から削除され、新しいパラメータのみ言及されている可能性があります。 新しい OTW パラメータは大文字と小文字が区別されるため、ドキュメントの上記ページでは OTW パラメータを厳密なキャメルケース表記に修正する必要があります。 | |
| INTB-43 | 『言語リファレンス ガイド』に少し記載漏れがあります。 フィールド RDB$DEPENDED_ON_TYPE および RDB$DEPENDENT_TYPE の説明には、型コード 11 と 14 が記載されていません。 14 は、外部関数です。 11 はジェネレータです。 | |
| RAID 112111。 『操作ガイド』: 第 11 章: トピック 「EDIT」。 Windows プラットフォームでは、EDIT を実行すると、EDITOR 環境変数で指定されたテキスト エディタが呼び出されます。 この環境変数が定義されていない場合、EDIT では Microsoft の |
||
| RAID 251988。 『操作ガイド』: 第 9 章: 「ジャーナル機能のヒントとベスト プラクティス」。 CHECKPOINT LENGTH の情報を更新しました。 | ||
| RAID 218084。 『言語リファレンス ガイド』 第 6 章の表 TMP$DATABASE の説明に TMP$STATE フィールドが記載されていません。 | ||
| RAID 263959。 『データ定義ガイド』 第 13 章: ページ 13-17 に記載されている gbak の例は構文が正しくありません。 | ||
| 23253 | RAID 238178。 『言語リファレンス ガイド』 第 2 章。 CASE 文の SQL サンプルは切り詰められているため動作しません。 | |
| RAID 194123。 『言語リファレンス ガイド』 第 2 章。 抽出時の Yearday の戻り値が 1-366 と記載されていましたが、 正しくは、0-365 です。 Hour および minute も同様に不正です。 それぞれ、1-23 および 1-59 と記載されていましたが、 正しくは、0-23 および 0-59 です。 | ||
| RAID Issue 256520: 『API ガイド』 第 15 章。 "isc_dsql_batch_execute()" のシグネチャに "isc_db_handle *db_handle" が誤って含まれています。 "isc_dsql_batch_execute()" のシグネチャに、"ULONT" を使った宣言が誤って含まれています。 "isc_dsql_batch_execute()" のシグネチャに宣言 "int dialect" が誤って含まれていますが、この引数は実際には "unsigned short" として ibase.h に実装されています。 |
||
| RAID Issue 240455: 『API ガイド』 第 15 章。SQL が 64 K より大きい場合、isc_string_too_large エラーが発生すると記載されていますが、 64 K は正しくは 2 GB です。 | ||
| RAID Issue 218053: 『言語リファレンス ガイド』 第 2 章。 ALTER DATABASE の説明には "現在のデータベースに二次ファイルを追加します" と記載されています。 この説明では、実行できるようになった他の新しいアクションのことを考慮していません。 "データベースの特性を変更します" に変更します。 | ||
| RAID Issue 120748: 『API ガイド』 第 3 章。 ISC_DATABASE を表 3.1 から削除します。 これはもう実装されません。 | ||
| RAID Issue 106998: 『操作ガイド』 第 7 章。 エラー OBJECT database_name IS IN USE は間違っています。 | ||
| 5742 | RAID Issue 192587: 『データ定義ガイド』 第 8 章。 DSQL でビューを作成する際には UNION を使用できないという意味の記載があります。 これは IB 5.6 以降は事実ではありません。 | |
| 84435 | RAID Issue 276427: 『データ定義ガイド』 第 14 章。 UTF 8 の最大文字サイズは 1 バイトから VARCHAR(63) に変更されています。 | |
| InterBase 2009 Update 4: | ||
| INTB-412 | RAID 275463: DELETE 文を 2 回実行すると制約エラーが発生し、その結果、サーバーがクラッシュします。 | |
| INTB-411 | RAID 275462: 外部キー制約インデックスがないテーブルからレコードを削除すると、データベースの破損が報告されます。 | |
| INTB-384 | ネストしたセーブポイント全体にわたる更新のセーブポイント ロールバックでインデックス エントリが失われます。 | |
| INTB-356 | RAID 274857 & 274858: スイープ中にテーブルの現在の書式記述子がガベージ コレクションされるおそれがあります。 | |
| INTB-331 | RAID 273917: gds32.dll が system32 ディレクトリにインストールされません。 | |
| INTB-305 | 認証時に ibserver が interbase.log にエラーの発生を繰り返し記録し始め、ディスク領域全体がそのログで占有されてしまうことがしばしばあります。 | |
| INTB-292 | UTF-8 データベースでプリペアド ステートメント クエリーが失敗します。 | |
| INTB-281 | Java からのバッチ更新クエリーで InterBase サーバーがクラッシュします。 | |
| INTB-252 | RAID: 272016: InterBase 2009 Update 2 で、イベント リスナがネイティブ OTW 接続文字列と連動しません。 | |
| INTB-249 | OTW の設定なしに OTW ポートに接続しようとすると、クライアントがハングアップします。 | |
| INTB-231 | RAID 270898: SQL 文を実行すると、成功時にも JDBC ドライバが通常の結果以外に SQL 警告を返します。 | |
| INTB-230 | interbase.msg が見つからないと、DSQL エラーの発生時にクライアントがクラッシュします。 | |
| INTB-228 | テーブル名の誤り: 『言語リファレンス ガイド』 表 5.3 で表 B-4 を参照しています。 正しくは、表 5.4 を参照します。 | |
| InterBase 2009 Update 3: | ||
| RAID 263854: PDF ドキュメント内から他の PDF ドキュメントへのホット リンクでエラーが発生します。 | ||
| RAID 268798: 同じテーブルから検索するストアド プロシージャによる内部結合を行うと、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | ||
| RAID 270024: InterBase では、Large Address Aware フラグを設定していても、2 GB を超えるデータベース キャッシュを使用できません。 新しい更新については、『操作ガイド』の付録 B「InterBase の制限」、表 B1 を確認してください。 "データベースごとのキャッシュ ページの最大数" の説明を参照してください。 | ||
| RAID 270898: SQL 文を実行すると、成功時にも JDBC ドライバが通常の結果以外に SQL 警告を返します。 | ||
| RAID 270959: ODS 10.x データベースにアクセスすると、サーバーがクラッシュします。 | ||
| 271600 | 75561 | 負荷の大きい 8 コア システムで "Request Synchronization error"(要求の同期エラー)が報告されます。 |
| INTB-146 | RAID 268798: 同じテーブルから検索するストアド プロシージャによる内部結合を行うと、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | |
| INTB-147 | RAID 270284: テーブル間の結合やストアド プロシージャを伴う複雑なクエリーの実行が非常に遅くなります。 | |
| INTB-150 | RAID 270017: 複数のクライアントが異なるデータベースに対して同時に ALTER TABLE 文を実行すると、クライアントのエラーまたはハングアップが発生します。 | |
| INTB-152 | RAID 269558: マルチクライアントでの処理後、オンライン ダンプにレコードが 1 つ欠けています。 このレコードは元のデータベースにはありますが、オンライン ダンプには含まれていません。 | |
| INTB-153 | RAID 269555: マルチクライアントでの処理時に、暗号化したデータベースからオンライン ダンプ ファイルを取得すると、インデックスが破損しページ エラーになります。 | |
| INTB-155 | RAID 269200: Windows Vista 版の IBConsole ヘルプは最新ではありません。 | |
| INTB-156 | RAID 268686: Windows ターミナル サービスを使った InterBase クライアントでは、長時間にわたって実行したり、負荷の大きいデータベース処理の要求がサーバーに集中した場合には、"Cannot attach to Services Manager"(サービス マネージャに接続できない)エラーを報告します。 | |
| INTB-157 | RAID 267667: 多数の同時クライアントから要求された負荷の大きい INSERT 処理を何時間にもわたって実行すると、ページ xxxx の型が間違っています(7 が必要ですが、5 が検出されました)。 | |
| INTB-159 | InterBase JDBC ドライバを介した OTW/SSL 接続が機能しません。 『開発者ガイド』の章「JDBC を使ったプログラミング」のセクション「SSL ファイル プロパティ」を調べて、新しい更新を確認してください。 | |
| INTB-168 | RAID 270396: Java クライアントでは、SEP(システム暗号化パスワード)が必要なデータベースに接続できません。 | |
| INTB-229 | エラー メッセージがありません。 | |
| INTB-230 | interbase.msg が見つからないと、DSQL エラーの発生時にクライアントがクラッシュします。 | |
| InterBase 2009 Update 2: | ||
| RAID 254988: 明示的および暗黙的な結合を伴うクエリーを実行すると、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | ||
| RAID 256996: ネストしたクエリーで DISTINCT が間違った結果を返すおそれがあります。 | ||
| 65388 | RAID 257272: DELETE 文と SELECT 文(さらにおそらく INSERT 文も)を同時に実行すると、データベースが破損します。 "internal gds software consistency check (exceeded index level)"(gds ソフトウェアによる内部一貫性チェック: インデックス レベルを超えました)というエラーが interbase.log に記載されます。 | |
| 57839 | RAID 257670: ストアド プロシージャでの結合が間違った結果を返します。 | |
| RAID 259585: 左結合を持つ 2 つのビュー間で内部結合を行うと、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | ||
| RAID 260489: ジャーナル ファイルが失われた場合、データベースに接続すると失敗する可能性があります。 修正のメモ: データベースとそのジャーナル ファイルを切り離すための新しい GFIX スイッチ(-disable wal)が用意されています。 ジャーナル ファイルまたはジャーナル アーカイブ ファイルのクリーンアップは試みられず、コミットされたデータが失われた可能性があります。 これが発生するおそれがあるのは、失われたジャーナルまたはアクセスできないジャーナルにより、データベース ファイルにきちんと適用されていないデータがコミットされた可能性があるためです。 ただし、データベースに接続して、そこに含まれている既存のデータにアクセスすることは可能になります。 |
||
| RAID 261953: 不正な TCP パケットにより、サーバーがクラッシュするおそれがあります。 | ||
| RAID 261974: 復元時に SORTMEM_BUFFER_SIZE が大きいとサーバーがクラッシュします。 | ||
| RAID 263533: OTW: 不正な形式の接続文字列の場合は、サーバーがハングアップします。 | ||
| RAID 265145: Unicode 列に無効なデータを入力すると、検索操作時にクライアントがハングアップします。 | ||
| RAID 265481/2: ジャーナル機能と暗号化の組み合わせは失敗し、"decryption of encryption value failed?"(暗号化値の暗号解除に失敗した可能性があります)のエラーが出力されます。 | ||
| RAID 265601: GBAK をサービスとして実行すると、サーバーでの CPU 使用率が高くなります。 | ||
| RAID 265824: インデックスがあり character_set_name と collation_name が一致しないフィールドに基づいたクエリーがレコードを返しません。 | ||
| RAID 265905: セキュリティの脆弱性が不正なクライアントで利用されます。 | ||
| RAID 267372: InterBase では、マルチホーム ホストの両方のインターフェイスにイベントを伝達することはできません。 | ||
| RAID 267433: 例外のメッセージに最初の 67 文字しか表示されません。 78 文字が表示されるはずです。 | ||
| RAID 267550: Solaris 10 では、バスのアラインメント エラーでサーバーがクラッシュします。 | ||
| 70915 | RAID 267860: いくつかの条件下でスイープを行うと、"Maximum user count exceeded"(ユーザー数の上限を超えました)と "Request depth exceeded for IRQ_93"(IRQ_93 の要求の深さを超えました)のエラーが interbase.log に記載されます。 | |
| RAID 267874: 複数の CPU がある場合、Windows または Solaris では、多数のユーザーが多数の挿入操作を行うと、InterBase サーバーがセグメント フォールトでクラッシュします。 | ||
| RAID 267963: employee.gdb に接続後、gfix でデータベースの検証を行うと、interbase.log に多数の "Page xxx is use but marked free"(ページ xxx は使用されていますが、空いていることを示すマークが付いています)エラーが記録されます。 | ||
| RAID 268016: InterBase サービス API には、Windows ターミナル サービスに影響を及ぼす問題があります。 | ||
| InterBase 2009 Update 1: | ||
| 65969 | 暗号化されたデータベースのバックアップ/復元は、IBConsole ではサポートされていません。 | |
| RAID 265043: データベースまたは列にキャラクタ セットがある場合、暗号化が失敗します。 | ||
| RAID 265241: 列を再度暗号化すると、サーバーがクラッシュします。 | ||
| RAID 258311: 大きいバッファと –o オプション("1 つずつ" の意味)で gbak を使って復元を行うと、サーバーがクラッシュします。 | ||
| JDBC: 区切り付きのテーブル/列では、DataBaseMetadata.getTables() が機能しません。 | ||
| JDBC: DataBaseMetadata.getTables() による結果セットの順序が間違っています。 | ||
| JDBC: InterBase 2009 の予約語が認識されません。 | ||
| InterBase 2009: | ||
| RAID 240075: gfix -validate -full を実行すると、テーブル RDB$DEPENDENCIES でインデックスが破損している旨のメッセージが表示されます。 | ||
| RAID 252301: IBMgr を bin ディレクトリから直接起動すると、サーバーをサービスとして起動できません。 代わりに、インストールされているショートカット("InterBase Server Manager [instance = gds_db]")を使って起動する必要があります。 | ||
| 56532 | RAID 255784: 特定の OR 条件を付けて SELECT 文を実行すると、InterBase サーバーがクラッシュします。 | |
| RAID 255847: 新たに復元されたデータベースを検証すると、インデックス RDB$DEPENDENCIES で多数のエラーが報告されます。 | ||
| 56533 | RAID 256021: JDBC ドライバ: PreparedStatement.addBatch() を複数回呼び出すと、PreparedStatement.executeBatch() を呼び出したときにエラーが発生します。 | |
| 53957 | RAID 256054: 日付のインデックスが付いたテーブルに対して SELECT 文を実行すると IBServer がクラッシュします。 | |
| RAID 257272: DELETE 文と SELECT 文(さらにおそらく INSERT 文も)を同時に実行すると、データベースが破損します。 "internal gds software consistency check (exceeded index level)"(gds ソフトウェアによる内部一貫性チェック: インデックス レベルを超えました)というエラーが interbase.log に記載されます。 | ||
| 51439 | RAID 261546: isc_info_num_buffers が間違った情報を返します。 | |
| InterBase 2007 Update 3: | ||
| RAID 240075: gfix -validate -full は、テーブル RDB$DEPENDENCIES でインデックスが破損している旨のメッセージを表示します。 | ||
| 34587 | RAID 251616: gfix -validate -full は、テーブル RDB$DEPENDENCIES でインデックスが破損している旨のメッセージを表示します。 | |
| 50554 | RAID 253033: UPDATE 文でテーブル エイリアスを使用すると、エラーが発生します。 | |
| 49895 | RAID 253303: 左外部結合クエリで、不正な結果が返されます。 | |
| 50461 | RAID 253967: CodeGear InterBase で複数の脆弱性。 | |
| RAID 254988: 明示的および暗黙的な結合を伴うクエリーを実行すると、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | ||
| 56532 | RAID 255784: 特定の OR 条件を付けて SELECT 文を実行すると、InterBase サーバーがクラッシュします。 | |
| 65387 | RAID 255847: 新たに復元されたデータベースを検証すると、インデックス RDB$DEPENDENCIES で多数のエラーが報告されます。 | |
| 53957 | RAID 256054: 日付のインデックスが付いたテーブルに対して SELECT 文を実行するとがサーバーがクラッシュします。 | |
| RAID 256996: ネストしたクエリーで DISTINCT が間違った結果を返すおそれがあります。 | ||
| 65388 | RAID 257272: DELETE 文と SELECT 文(さらにおそらく INSERT 文も)を同時に実行すると、データベースが破損します。 "internal gds software consistency check (exceeded index level)"(gds ソフトウェアによる内部一貫性チェック: インデックス レベルを超えました)というエラーが interbase.log に記録されます。 ストアド プロシージャでの結合が間違った結果を返します。 | |
| 57839 | RAID 257670: ストアド プロシージャでの結合が間違った結果を返します。 | |
| RAID 258311: 大きいバッファと –o オプション("1 つずつ" の意味)で gbak を使って復元を行うと、サーバーがクラッシュします。 | ||
| RAID 259585: 左結合を持つ 2 つのビュー間で内部結合を行うと、"No current record for fetch operation"(フェッチ操作の対象となる現在のレコードがありません)のエラーが発生します。 | ||
| 60873 | RAID 260621: Interbase 7.5 および 2007 で数値型にバグがあります。 | |
| RAID 261974: 復元時に SORTMEM_BUFFER_SIZE が大きいとサーバーがクラッシュします。 | ||
| RAID 265601: GBAK をサービスとして実行すると、サーバーでの CPU 使用率が高くなります。 | ||
| InterBase 2007 Update 2: | ||
| RAID 58205: 完全外部結合(両側外部結合)のアクセス方式の改善。 | ||
| 47598 | RAID 58257: インデックスなしの左外部結合のパフォーマンスの問題が修正されました。 | |
| 51179 | RAID 58462: UPDATE 文の相関サブクエリーの SELECT でインデックスが使用されません。 | |
| 47916 | RAID 60128: インデックスを使用する必要があるときに、テーブル式を指定した左外部結合が最適化されません。 | |
| 20359 | RAID 60269: "IN" キーワードまたは "OR" キーワードを使用するときのクエリーの最適化が修正されました。 | |
| 25160 | RAID 61347: クエリーが外部結合であるときに WHERE 句にインデックスが使用されません。 | |
| 10264 | RAID 219990: 大きなテーブルで左外部結合を実行した際に時間がかかる。 | |
| 49654 | RAID 223805: 最適化機能が、相関サブクエリーを実行するのに、テーブルの順次スキャンを使用します。 | |
| 47599 | RAID 231879: データベースが読み取り専用になっている場合、直近のトランザクションで挿入されたデータが参照できません。 | |
| 11219 | RAID 239883: Desktop Edition を Administrator としてインストールしても、他のユーザーはプログラムのリストが利用できません。 | |
| RAID 243270: 2007 のクライアントで、InterBase 7.1 サーバーに接続すると「unavailable database error」が発生します。 | ||
| 40486 | RAID 243299: リモート接続で 2007 クライアントを使って接続を解除すると、InterBase 7.1 サーバーがクラッシュします。 | |
| 47604 | RAID 243679: Windows Vista で Administrator であっても、InterBase サーバー マネージャは通常のユーザーとして起動されます。 | |
| RAID 248755: interclient.jar JDBC ドライバが InterBase SDK の一部としてインストールされるようになりました。 | ||
| RAID 248850: 『言語リファレンス ガイド』にしおりがありません(英語版のみ)。 | ||
| 47600 | RAID 249045: InterBase 2007 インストーラが SuSE Linux 10 でも動作するようになりました。 | |
| RAID 249232: Windows プラットフォームによっては、ジャーナル機能が有効になっているときに各レコードの INSERT/COMMIT に遅延があります。 | ||
| 47602 | RAID 251265: 多数の JOIN による結合のあるクエリーが "size of optimizer block exceeded (最適化機能ブロックのサイズを超過しました)" というメッセージを返します。 | |
| 44565 | RAID 251608: 最適化機能ブロックを超過したというエラーが発生する問題が修正されました。 | |
| 43874 | RAID 251610: JOIN での結合に複数のフィルタがあるとき、左外部結合を行う LEFT JOIN のクエリー結果が正しくありません。 | |
| RAID 256161: トリガーにネストしたループがあると、サーバーがクラッシュします。 | ||
| InterBase 2007: | ||
| RAID 60140: バックアップして復元すると、制約を追加する際に問題が発生します。 | ||
| RAID 112113: 無効な "CREATE SHADOW" 文が原因で ISQL がクラッシュします。 | ||
| RAID 120473: DEFAULT は BLOB の場合にも使用可能ですが、実際に使用するとエラー("BLOB" 文字列の変換エラーなど)が発生します。 | ||
| RAID 122700: REFERENCE キーのインデックスが複数の場合に、FOREIGN KEY 制約の DDL が失敗します。 | ||
| RAID 124028: IBConsole からビュー データを参照できません。 | ||
| RAID 124771: 親テーブルで、参照フィールド(または複数の参照フィールド)に対してプライマリ キー制約とそれとは別個のユニークなインデックスが共に設定されていて、そのユニークなインデックス名のソート順が RDB$PRIMARY より前になる場合、外部キー制約を作成しようとすると、"制約が見つからない" という趣旨のエラーが発生します。 | ||
| RAID 127168: InterBase サーバーが、絶対パスを指定されていないデータベースを System32 ディレクトリに作成します。 | ||
| RAID 148143: フィールド T1 は NULL ではいけないことを示す通常のエラー メッセージではなく、"文字列「BLOB」の変換エラー" という趣旨のメッセージが表示されます。 | ||
| RAID 157531: もう使用されていない ibconfig パラメータが ibconfig ファイルに含まれています。 | ||
| RAID 169965: プロシージャが既に削除されている場合、"SELECT * FROM TMP$PROCEDURES" を実行するとサーバーがクラッシュします。 | ||
| 7997 | RAID 200567: SQL コマンドで BLOB フィールドへの挿入や更新が可能になりました。 | |
| RAID 213125: "RDB$" で始まる名前のトリガーを削除できません。 | ||
| RAID 217985: システム一時テーブルの一覧(現時点ではページ 244)に TMP$HEAPS と TMP$TRIGGERS が含まれていません。 | ||
| RAID 218040: INTERBASE 環境変数の値が無効な場合、誤解を招くおそれのあるエラーが発生します。 | ||
| RAID 228356: 異なるポートへの接続文字列で、既存のポート ラベルの他に異なるポート番号を指定できます。 | ||
| RAID 230142: Linux 版で、インストールの際に "システム起動時に InterBase をサービスとして起動しますか?" に対して [No] を選択した場合でも、InterBase サーバーがサービスとして実行されます。 | ||
| RAID 237809: データベース再ルーティングの不具合については、エラー メッセージの改善が必要です。 | ||
| RAID 238414: 更新後に選択を実行すると、"読み取り専用ビューを更新できない" という趣旨のエラーが発生します。 | ||
| RAID 238638: サーバーのエイリアス名で確立した接続は、エイリアスを使わずに確立した他の接続が同時に存在する場合、機能しなくなります。 | ||
| RAID 239254: 組み込みデータ ユーザー認証のセクションがドキュメントに見当たりません。 | ||
| 24859 | RAID 239622: gds32.dll の機能強化により、SPB でインスタンス名をサポートする必要があります。 | |
| RAID 239690: ビューからの選択で、BLOB を返す UDF が呼び出されると、サーバーがクラッシュするおそれがあります。 | ||
| 13183 | RAID 239730: IBConsole がエイリアスに対応していません。 | |
| 28518 | RAID 239847: 入力パラメータのある SELECT プロシージャで、DataDirect ODBC ドライバが動作しません。 | |
| 14563 | RAID 239880: BLOB フィールドに対して SELECT、INSERT、UPDATE の各コマンドを実行できるようにする必要があります。 | |
| 11220 | RAID 239882: Services ファイルに記述されているエントリが不完全です。 | |
| 9014 | RAID 239886: データベースが完全パスで既に開かれていると、データベース エイリアスが機能しません。 | |
| 31288 | RAID 240793: BLOB を VARCHAR(または CHAR)とみなす機能がストアド プロシージャで機能しません。 | |
| RAID 241006: [ヘルプ] メニュー内の [IBConsole ヘルプ] にアクセスすると、IBConsole がクラッシュします。 | ||
Embarcadero Technologies と正規の保守契約を結ばれている場合、お使いの弊社アプリケーションで何らかの問題があった際に Embarcadero の技術サポート チームが対応いたします。 また弊社の保守契約により、Embarcadero Technologies 製品の登録ユーザーは、その契約の有効期間の間、ソフトウェアの更新を無料でダウンロードする権利を有します。 評価者は、その評価期間の間、無料で技術サポートを受けることができます。 Web サイトの「カスタマーサポート」セクションにアクセスすることをお勧めします。
評価者は、その評価期間の間、無料で技術サポートを受けることができます。 Embarcadero Technologies 製品の評価版をダウンロードしたり、弊社および弊社製品についてさらにお調べになりたい場合には、http://www.embarcadero.com/jp/ をご参照ください。
Copyright 2011 Embarcadero Technologies Inc. すべての Embarcadero のブランド名および製品名は、米国、およびその他の国における Embarcadero Technologies の商標または登録商標です。 その他のブランド名または製品名に関する権利はすべてその所有者に帰属します。