トラブルシューティング

提供: InterBase

InterBase クイック スタート:Part II - データ定義 へ戻る

ドメイン定義を入力している際にタイプミスをしていると、Tables.sql スクリプトを実行した際、または、手入力でテーブルを定義している際に、エラー メッセージが表示されます。 InterBase がメッセージを送ります。

スクリプトを実行した際、エラー情報がないかスクリプトのログ ファイルを確認します。 このログ ファイルは、スクリプト ファイルと同じディレクトリに作成されます。 手入力でテーブルを定義している場合は、SQL 出力領域で詳細情報を確認します。 SQL 出力領域は、スクリプトの内容をエコー出力します。

どちらの場合も、特定のテーブルに問題があった場合、次のように、そのテーブルの SQL コードの後にエラー メッセージが続きます:

Statement failed, SQLCODE = -607 
  Dynamic SQL Error
  -SQL error code = -607
  -Invalid command
  -Specified domain or source column does not exist

問題を把握するには、次の手順を行います:

  1. エラー メッセージを読みます。 この例の場合、指定されたドメインが存在していない、と告げています。 おそらく、ドメイン名の入力ミスによるエラーでしょう。
  2. IBConsole の左ペインで [ドメイン] をクリック。 InterBase は、右ペインに、すべてのドメインの名前を表示します。
  3. 手入力で次の 4 つのドメインを定義しています: FIRSTNAME、LASTNAME、EMPNO、DEPTNO。 ドメインのリストにあるこれらを 1 つずつ見ていき、これらの名前が正しく入力されているかどうかを確認しあmす。 ミススペルしているものを見つける作業に似ています。
  4. 次のコマンドを入力、実行して、誤ったドメインをドロップします:
    DROP DOMAIN domainname
  5. CREATE DOMAIN 文を使用して、ドメインを再度作成します。
  6. Tables.sql スクリプトをもう一度実行します。
    • これが問題の原因でなければ、引き続き次の手順を行います:
  7. メッセージ テキストの右上を見て、どのテーブルに問題があるのかを確認します。 そのテーブルで、どのドメインが使用されているかに注意します。 その中に、手入力した 4 つのドメインは含まれていますか?
  8. IBConsole の左ペインで [ドメイン] をクリック。 InterBase は、右ペインに、すべてのドメインの名前を表示します。 ドメインを右クリックし、[プロパティ]を選択します。 [メタデータ]タブをクリックすると、InterBase が、SQL 出力領域にそのドメインの定義を表示します。
  9. 表示された定義と、本ドキュメントで指定された定義(入力した定義)を比較します。 問題のあるドメインが見つかるまで、手入力した 4 つのドメインをそれぞれ確認していきます。
  10. 上のステップ 4 で説明したように、そのドメインをドロップし、再度正しく入力します。 Tables.sql スクリプトをもう一度実行します。

次は: