-497   THE MAXIMUM LIMIT OF INTERNAL IDENTIFIERS HAS BEEN EXCEEDED FOR DATABASE database-name

説明

データベースの場合に、 内部 ID 限度を超えたため、SQL ステートメントを実行することができません。 このエラーの原因は、次のいずれかです。
  1. CREATE DATABASE ステートメントで、65217 DBID の限度を超過している。
  2. 他のすべてのステートメントで、 そのデータベースで、32767 OBID の限度を超過している。
  3. データベースが、WORKFILE データベースである場合、以下のいずれかの理由が該当する。
    • WORKFILE データベース内の表スペースの数が、限度の 500 を超えている。
    • ローカル Db2® メンバー上のすべてのエージェントに含まれている、宣言されたグローバル一時表に定義される索引の数が、限度の 10,000 を超えている。
    • ローカル・エージェントに含まれる表とトリガーの数が、限度の 11,767 を超えています。 WORKFILE データベースの表には、作業ファイル、作成されたグローバル一時表、および宣言されたグローバル一時表が含まれます。

システムの処置

このステートメントを処理することはできません。

プログラマーの応答

以下の事例で説明されている適切な処置をとってください。
  1. DBID の限界を超えた場合は、未使用のすべてのデータベースを DROP させ、 COMMIT を実行してください。
  2. OBID の限界を超えた場合は、次のいずれかの処置を行ってください。
    • データベース内の未使用のすべてのオブジェクトを DROP し、COMMIT を実行してください。 COMMIT の後で、問題の表スペースに REORG ユーティリティーを実行してください。
    • 別のデータベースを指定してください。
    • MODIFY ユーティリティーを実行して未使用の OBID を再利用してください。 追加情報については、DBD 内のスペースの再利用を参照してください。

SQLSTATE

54041