GetTableDDL

以数据定义语言 (DDL) 格式返回指定为 JSON 数组的表摹本列表的表信息。

格式 

GetTableDDL ( 表摹本名称 ; 忽略错误 )

参数 

表摹本名称 - 要返回的表摹本的 JSON 数组的文本表达式。

忽略错误 - 如果设置为 True,则返回不导致错误的表摹本的 DDL 信息。如果为 False,当没有表摹本导致错误时,返回 DDL 信息;否则返回 "?"指示错误并记录导致 AI 调用日志中错误的表摹本(请参阅设置 AI 调用日志记录脚本步骤)。

返回的数据类型 

文本

原始版本 

21.0

说明 

此函数返回当前文件中指定表摹本的 DDL 表示。DDL 由 SQL 命令组成,可用于定义数据库模式(表、字段和关系)。

注释 

  • 与表和字段名称一起,返回的 DDL 包括在管理数据库对话框中输入的字段注释。有关每个字段的附加信息可能有助于模型提供更有用的 SQL 查询。

示例 1 

对于包含名为 Meetings and Topics 的表摹本的 FileMaker Pro 文件,GetTableDDL ( "[\"Meetings\", \"Topics\"]"; True) 返回以下内容:

复制
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 是否返回将 ignoreError 参数设置为 False 的错误。

复制
设置 AI 调用日志记录 [ 打开 ; 文件名: "ai-call.log" ; 详细: 关闭 ]
设置变量 [ $tableDDL ; 值: 
    GetTableDDL ( JSONMakeArray ( "Meetings,Employees,Contact Info" ; "," ; JSONString ) ; 
    False ) ]
If [ $tableDDL = "?" ]
    显示自定义对话框 [ "发生错误。 请参阅 Documents 文件夹中的 ai-call.log。"]
Else
    显示自定义对话框 [ $tableDDL ]
End If