FileMaker システムテーブル

各 FileMaker Pro データベースファイルには次のシステムテーブルがあります:

  • FileMaker_Tables

  • FileMaker_Fields

  • FileMaker_BaseTables

  • FileMaker_BaseTableFields

ODBC アプリケーションの場合、これらのテーブルは SQLTables のカタログ関数が返す情報の中に含まれます。JDBC アプリケーションの場合、これらのテーブルは DatabaseMetaData メソッドの getTables が返す情報の中に含まれます。テーブルは ExecuteSQL 関数でも使用できます。

FileMaker_Tables テーブル

FileMaker_Tables テーブルには FileMaker Pro ファイル内で定義されたデータベーステーブルに関する情報が含まれます。

FileMaker_Tables テーブルは次の列を含むリレーションシップグラフの各テーブルオカレンスの行を含みます:

  • TableName - テーブルオカレンス名です。

  • TableId - テーブルオカレンスの固有の ID です。

  • BaseTableName - テーブルオカレンスの作成元の基本テーブル名です。

  • BaseFileName - 基本テーブルが含まれるデータベースファイルの FileMaker Pro ファイル名です。

  • ModCount - このテーブルの定義で確定された変更の合計回数です。

コピー
SELECT TableName FROM FileMaker_Tables WHERE TableName LIKE 'Sales%'

FileMaker_Fields テーブル

FileMaker_Fields テーブルにはすべてのテーブルオカレンスの FileMaker Pro ファイル内で定義されたフィールドに関する情報が含まれます。

FileMaker_Fields テーブルは次の列を含みます:

  • TableName - フィールドが含まれるテーブルの名前を指定します。

  • FieldName - フィールドの名前です。

  • FieldType - フィールドの SQL データタイプです。

  • FieldId - フィールドの固有の ID です。

  • FieldClass - Summary (集計フィールド)、Calculated (計算結果)、または Normal の 3 つの値の 1 つです。

  • FieldReps - フィールドの繰り返しの回数です。

  • ModCount - このテーブルの定義で確定された変更の合計回数です。

コピー
SELECT * FROM FileMaker_Fields WHERE TableName='Sales'

FileMaker_BaseTables テーブル

FileMaker_BaseTables テーブルには FileMaker Pro ファイル内で定義されたソース (またはベース) テーブルに関する情報のみが含まれます。FileMaker_Tables のようにすべてのテーブルオカレンスが含まれるわけではないため、FileMaker_BaseTables テーブルのクエリーの方が高速になる可能性があります。

FileMaker_BaseTables テーブルは次の列を含む各ベーステーブルの行を含みます:

  • BaseTableName - ベーステーブルの名前です。

  • BaseTableId - ベーステーブルの固有の ID です。

  • Source - ベーステーブルのデータソースに関する次のいずれかが入ります:

    • <Internal> - テーブルが現在の FileMaker Pro ファイル内にあります。

    • <Missing> - データソースが使用できません。

    • ベーステーブルを利用できる外部データソースの名前です。

  • ModCount - このベーステーブルの定義で確定された変更の合計回数です。

コピー
SELECT BaseTableName FROM FileMaker_BaseTables WHERE BaseTableName LIKE 'Sales%'

FileMaker_BaseTableFields テーブル

FileMaker_BaseTableFields テーブルにはソース (またはベース) テーブルのみの FileMaker Pro ファイル内で定義されたフィールドに関する情報が含まれます。

FileMaker_BaseTableFields テーブルは次の列を含みます:

  • BaseTableName - フィールドが含まれるベーステーブルの名前を指定します。

  • FieldName - フィールドの名前です。

  • FieldType - フィールドの SQL データタイプです。

  • FieldId - フィールドの固有の ID です。

  • FieldClass - Summary (集計フィールド)、Calculated (計算結果)、または Normal の 3 つの値の 1 つです。

  • FieldReps - フィールドの繰り返しの回数です。

  • ModCount - このベーステーブルの定義で確定された変更の合計回数です。

コピー
SELECT * FROM FileMaker_BaseTableFields WHERE BaseTableName='Sales'