Filemaker Pro 10:如何获取mySQL表(ODBC)上最后一次插入的唯一ID

时间:2009-07-09 00:12:18

标签: mysql insert odbc filemaker

我有一个filemaker脚本,可以在几个导入的mySQL表上插入一个新条目。我需要在创建这些条目时(在任何一种方式之前或之后)获取这些条目的唯一ID,以便稍后在脚本中引用它们。使用LAST_INSERT_ID()在SQL中很容易做到这一点,但我似乎无法在filemaker中找到它。

我尝试过的不起作用:

  • GetNextSerialValue(Get(FileName)&“。fp7”;“jos_users :: id”)
    #return什么都没有,在ODBC表上无法正常工作
  • 获取(RecordID)
    #Local值与mySQL唯一ID不对应

提前致谢!任何建议都表示赞赏。

1 个答案:

答案 0 :(得分:3)

您如何在MySQL表中创建记录?您是使用FileMaker的ESS和本机“新记录”命令来插入新记录还是使用Execute SQL []脚本步骤?还是别的什么?

下一个序列值和recordID值是特定于FMP的,不适用于此处(除非您的MySQL主键是由FMP管理的串行值)。

使用“新记录”FileMaker将记录上下文设置为新记录。因此,如果您的“jos_users”表出现是MySQL表的别名,则调用“New Record”会将您置于该记录的上下文中。然后,您可以将变量设置为“id”列中的内容。

Go To Layout ["jos_users" (jos_users)]
New Record/Request
Commit Records/Requests[No dialog]
Set Variable [$lastInsertID; jos_users::id]

这假设您的MySQL记录在记录插入时被赋予了正确的ID,并且可以通过您已应用的任何验证检查提交记录。

如果您使用其他流程创建记录,请告知我们,我们可以告知您如何获取价值。