ODBC データソースの編集
ODBC データソースにより、FileMaker ファイルは外部 ODBC テーブルのデータにアクセスすることができます。FileMaker テーブル を表示および更新するのとほとんど同じ方法で、リレーションシップグラフの ODBC テーブルをインタラクティブに表示および更新することができます。
FileMaker は、外部使用のために ODBC API を提供する多くのリレーショナルデータベース管理システム (RDBMS) に接続することができます。サポートされているデータソースの一覧については、ODBC クライアントドライバの設定を参照してください。
重要 ODBC データソースを使用して操作するためには、次の内容を実行する必要があります。
 •
ODBCドライバを介して外部データソースに接続し、DSNを設定します。ODBC クライアントドライバの設定を参照してください。
 •
ODBC データソースを FileMaker Pro ファイルにリンクさせた後、オプションを設定および編集することができます。
ODBC データソースを編集するには:
1.
[ファイル] メニューの [管理] サブメニューから [外部データソース...] を選択します。
[外部データソースの管理] ダイアログボックスが表示されます。
2.
一覧から ODBC データソースを選択し、[編集...] をクリックします。
[データソースの編集] ダイアログボックスが表示されます。
3.
データソースの名前を変更し、異なる DSN を指定し、名前を付けた ODBC データソースにログインするための認証オプションを設定し、あるいは表示オプションを設定することができます。
4.
[認証] のデフォルトオプションは、[ユーザ名とパスワードの入力を求める] です。テーブルに初めてアクセスする時に、ユーザはユーザ名とパスワードを入力する必要があります。
この FileMaker ファイルのすべてのユーザに入力要求をしない場合は、[ユーザ名とパスワードを指定する(すべてのユーザに適用)] を選択し、ユーザ名とパスワードを入力します。外部テーブルにアクセスユーザを決定する条件を作成することもできます。この条件に変数やフィールドを使用することはできません。条件設定の詳細については、[計算式の指定] ダイアログボックスを参照してください。
ODBC データに Microsoft SQL Server からアクセスする共有データベースファイルを操作し、ODBC データソースシングルサインオンを有効にする場合は、[Windowsの認証を使用(シングルサインオン)] を選択してSPN(Service Principal Name)を入力します。ODBC データソースシングルサインオンの有効化(Windows のみ) を参照してください。
メモ FileMaker はパスワードを暗号化します。しかし、暗号化が ODBC ドライバでサポートされているかどうかによって、外部データソースの暗号化は異なります。
5.
パフォーマンスを向上させるため、リレーションシップグラフに追加することができる外部テーブルまたは表示の一覧をフィルタします。デフォルトでは、データソースからのすべてのテーブルを表示します。
 •
[カタログ名] に、名前を入力します。入力しない場合はすべてのカタログからのテーブルが表示されます。
 •
[スキーマ名] に、名前を入力します。入力しない場合はすべてのスキーマからのテーブルが表示されます。
 •
[テーブル名] に、唯一表示するテーブルの名前を入力します。
6.
[テーブル]、[ビュー]、または [システムテーブル] のタイプでテーブルの一覧をフィルタすることができます。
メモ 他の種類を含める場合、[タイプによるフィルタ] オプションすべての選択を解除します。
7.
[OK] をクリックします。
リレーションシップグラフの ODBC テーブルを設定する
ODBC データソースを追加した後、リレーションシップグラフの ODBC テーブルを使用して、他の FileMaker テーブルのようなレイアウトで操作することができます。ODBC テーブルでインタラクティブにリアルタイムでデータを検索、追加、更新、削除することができます。
1.
[ファイル] メニューの [管理] サブメニューから [データベース...] を選択します。
2.
[データベースの管理] ダイアログボックスの [リレーションシップ] タブで テーブル追加ボタン をクリックします。
3.
[テーブルを指定] ダイアログボックスで、[データソース] に、[ODBC データベース] を選択します。
4.
5.
6.
必要なテーブルを選択し、[OK] をクリックします。
リレーションシップグラフに外部テーブルが表示されます。テーブル名は斜体で表示されます。リレーションシップグラフのテーブルへのリンクや、これを使用した操作についての情報は、リレーションシップグラフの操作を参照してください。
ヒント リレーションシップグラフのテーブルが FileMaker テーブルか ODBC データソースからかを識別するには、ポインタをテーブルの見出しの上に合わせます。より簡単に識別するには、ODBC テーブルに色を付けるとよいでしょう。
リレーションシップグラフにテーブルを追加した後、FileMaker はレイアウトポップアップメニューにテーブル名の付いたレイアウトを追加し、テーブルは [テーブル] タブに一覧表示されます。テーブル名は斜体で表示されます。
ODBC テーブルからの列は、[フィールド] タブに表示されます。フィールド名は斜体で表示されます。FileMaker Pro がソリューション内に列を表示しないようにする場合、フィールドを削除することができます。これらの列は外部 SQL データソーステーブルスキーマからは削除されず、そのテーブルのスキーマの FileMaker Pro の表示からだけ削除されます。詳細については、FileMaker と ODBC データソースの間でのデータの更新を参照してください。
ODBC データソースを使用した操作を開始する前の考慮事項
 •
リレーションシップグラフの ODBC テーブルを対話的に使用して操作するか、「静的な」 ODBC インポートを通じて操作するかを決定します。ODBC データソースを使用して作業するさまざまな方法の概要は、FileMaker Pro での ODBC と JDBC の使用を参照してください。
 •
 •
FileMaker が自動的にテーブルのプライマリキーを判別できない場合、固有のキーを構成する列を選択するよう要求されます。FileMaker では各テーブルが各行に対して固有の値を持つ1つまたは複数の列を持っていることが要求されます。
ODBC データソースを使用した操作の制限
 •
外部 ODBC データソースのスキーマを変更することはできません。しかし、ODBC テーブルからデータの計算や集計を行うために、補助フィールドを追加することができます。補助フィールドの使用を参照してください。
 •
ODBC データソースからのフィールドは値一覧内で使用できますが、長いテキスト文字列などの CLOB (character large objects)はサポートされていません。
 •
ODBC データのある値一覧に対して、[アクセスなし] アクセス権および [制限付き] カスタムアクセス権はサポートされていません。ユーザが値一覧内の ODBC データを表示しないようにするには、外部 SQL データベースの行レベルセキュリティを強化する必要があります。値一覧アクセス権の編集を参照してください。
 •
 •
 •
[データベースの管理] ダイアログボックスの [フィールド] タブの外部テーブルを使用して操作している場合、次のフィールドオプションはサポートされていません。フィールドオプションの情報については、フィールドのオプションの設定を参照してください。
 •
[入力値の自動化] タブで、レコードを作成する時にシリアル番号を自動入力することができますが、レコードの確定後はできません。(外部データベースにより、レコードが確定される方法が制御されます。)ルックアップが ODBC データソースの関連データに対しての場合、[近似値(小さい値)を使用] と [近似値(大きい値)を使用] は無効になります。
 •
[入力値の制限] タブでは、[ユニークな値] と [既存値] が無効になります。フィールドで使用できる [最大文字数] は、外部データソースにより決定されます。
 •
[データの格納] タブは無効になります。
 •
FileMaker は、ODBC 管理者が設定する入力値の制限や他のオプションを制御することができません。フィールドオプションが同期操作でどのような影響を受けるかの情報については、FileMaker と ODBC データソースの間でのデータの更新を参照してください。
 •
メモ
 •
 •
FileMaker Server が ODBC データソースにリンクされたデータベースをホストする場合、外部データソースにアクセスするために、FileMaker クライアントにより DSN を設定する必要はありません。しかし、DSN は、FileMaker Server を実行しているコンピュータで設定する必要があります。
 •
FileMaker は、クエリーに SQL 設定セマンティックスを使用しません。FileMaker は、レイアウト上の各関連テーブルに対して 1 つのクエリーを実行することができます。特定の SQL 結合動作を保持するか、GROUP BY などの SQL 述語の結果を得る場合は、表示を作成します。その後、その表示を通じて FileMaker からのデータにアクセスします。(表示は「バーチャルテーブル」と呼ばれることもあります)
 •
 •
Microsoft SQL Serverデフォルトでは、ODBC テーブルからの DATETIME、DATETIME2、および SMALLDATETIME データがタイムスタンプフィールドタイプとしてインポートされます。タイムスタンプシャドウフィールドのフィールドタイプを日付または時刻のいずれかに変更できますが、データは特別な方法で構造化する必要があります。インポートされた ODBC テーブルにタイムスタンプデータが含まれていて、そのタイムスタンプフィールドを日付フィールドとして扱う場合、テーブル内の全データについて、時刻部分は 12:00 AM(または真夜中)と等しくなければなりません。同様に、タイムスタンプデータを含む ODBC テーブルをインポートして、そのタイムスタンプフィールドを時刻フィールドとして扱う場合、テーブル内の全データについて、日付部分は 1900-01-01(または January 1, 1900)と等しくなければなりません。
任意の ODBC テーブルで、フィールドがプライマリキーで値が固有でない場合は、結果は矛盾します。