GetTableDDL

JSON 配列として指定されたテーブルオカレンスの一覧のテーブル情報をデータ定義言語 (DDL) 形式で返します。

構文 

GetTableDDL (テーブルオカレンス名 ; エラー無視)

引数 

テーブルオカレンス名 - 返すテーブルオカレンスの JSON 配列のテキスト式。

エラー無視 - 「True」に設定すると、エラーを引き起こさないテーブルオカレンスの DDL 情報を返します。「False」に設定すると、テーブルオカレンスがエラーを引き起こさないときに DDL 情報を返します。それ以外の場合は「?」を返してエラーを示し、AI 呼び出しログにエラーを引き起こしたテーブルオカレンスを記録します ([AI 呼び出しログ設定] スクリプトステップを参照)。

戻り値のデータタイプ 

テキスト

起点バージョン 

21.0

説明 

この関数は現在のファイルで指定されたテーブルオカレンスの DDL 表現を返します。DDL はデータベーススキーマ (テーブル、フィールド、およびリレーションシップ) を定義するために使用できる SQL コマンドで構成されています。

メモ 

  • テーブル名およびフィールド名とともに、返される DDL には [データベースの管理] ダイアログボックスで入力したフィールドコメントが含まれます。この各フィールドに関する追加情報はモデルがより有用な SQL クエリーを提供するのに役立つことがあります。

例 1 

GetTableDDL ("[\"Meetings\", \"Topics\"]"; True) は「Meetings」および「Topics」という名前のテーブルオカレンスを含む FileMaker Pro ファイルに対して次の SQL クエリーを返します:

コピー
CREATE TABLE "Meetings" (
"Title" varchar(255),
"Location" varchar(255),
"Date" datetime,
"Start Time" datetime,
"End Time" datetime,
"Duration" varchar(255),
"Note" varchar(255),
"PrimaryKey" varchar(255), /*このテーブル内の各レコードの固有の識別子*/
"CreatedBy" varchar(255), /*各レコードを作成したユーザのアカウント名*/
"ModifiedBy" varchar(255), /*各レコードを最後に変更したユーザのアカウント名*/
"CreationTimestamp" datetime, /*各レコードが作成された日付と時刻*/
"ModificationTimestamp" datetime, /*各レコードが最後に変更された日付と時刻*/
"Note_Embedding" varbinary(4096),
PRIMARY KEY (PrimaryKey)
);

CREATE TABLE "Topics" (
"Subject" varchar(255),
"Text" varchar(255),
"ForeignKey" varchar(255), /*関連テーブル内の各レコードの固有の識別子*/
"Number of Topics" int,
"PrimaryKey" varchar(255), /*このテーブル内の各レコードの固有の識別子*/
"CreatedBy" varchar(255), /*各レコードを作成したユーザのアカウント名*/
"ModifiedBy" varchar(255), /*各レコードを最後に変更したユーザのアカウント名*/
"CreationTimestamp" datetime, /*各レコードが作成された日付と時刻*/
"ModificationTimestamp" datetime, /*各レコードが最後に変更された日付と時刻*/
PRIMARY KEY (PrimaryKey),
FOREIGN KEY (ForeignKey) REFERENCES Meetings(PrimaryKey)
);

例 2 

AI 呼び出しログをオンにしてから、テーブルオカレンス名の配列に対して、GetTableDDL がエラー無視引数を「False」に設定してエラーを返すかどうかを確認します。

コピー
AI 呼び出しログ設定 [オン ; ファイル名: "ai-call.log" ; 詳細: オフ]
変数を設定 [$tableDDL ; 値: 
    GetTableDDL (JSONMakeArray ("Meetings,Employees,Contact Info" ; "," ; JSONString) ; 
    False)]
If [$tableDDL = "?"]
    カスタムダイアログを表示 ["エラーが発生しました。ドキュメントフォルダの「ai-call.log」を参照してください。"]
Else
    カスタムダイアログを表示 [$tableDDL]
End If