一尘不染

SQL和Filemaker Pro 13协同工作

sql

我遇到了一个有趣的问题,一个以苹果为中心的用户将渴望在Filemaker Pro上运行数据库,而我们已经有多个数据库在MS SQL上运行。

FM Pro在外观上令人赞叹,作为与客户合作的前端看起来不错,但我更喜欢SQL。

有人同时使用吗?您是否可以轻松地在SQL和FM Pro之间运行任务以将数据更新到FM Pro(比如说隔夜)?是否有人出于任何目的将SQL从FM
Pro更改为可以吗?

提前致谢


阅读 133

收藏
2021-05-16

共1个答案

一尘不染

为了稍微扩展user4166144的答案,您可以使用ODBC将MSSQL作为外部数据源添加到FileMaker。(请参阅“使用FileMakerPro,我想创建到MS SQL Server,Oracle或MySQL数据源的实时连接。”)

这样,您就可以将布局基于MS SQL表,就像它是本机FileMaker表一样。也就是说,数据将是“实时”的,无需整夜复制。

ODBC连接有一些限制,这可能与您的情况无关。通常,FileMaker中的ODBC数据源不能在Manage
Database中获得所有FileMaker好东西。ODBC源中的表是“影子表”。例如,如果您在FileMaker中删除一个字段(“列”),则该字段不会在SQL数据库中被删除。但是,创建,编辑和删除记录都可以正常进行。您甚至可以将ODBC源中的表添加到关系图,这是从FileMaker中的多个表中获取数据的主要方式。

FileMaker有点难以忍受来自SQL背景的知识。它是为了快速开发应用程序而设计的,因此它具有某些范例。这里有几件事我希望能对您有所帮助:

  • FileMaker中的每个用户界面(“布局”)都基于表的出现。布局的主体表示该表出现中的单个记录。每个脚本,计算和相关数据都是从该单个表出现中的单个记录的角度来计算的。即,布局是“光标”。

  • 对于关系图,没有FileMaker方法(等效)可以执行与SQL“ OR”等效的方法。

  • FileMaker 12具有两个名称非常相似的功能。它具有计算功能“ ExecuteSQL”,该功能使您可以对FileMaker中出现的表运行SELECT语句。包括ODBC源。它还有一个称为“ Execute SQL”的脚本步骤,对于在ODBC数据源上运行任意SQL十分方便。后者可能对您非常有用。

  • 很难以任何一种优雅的方式将SQL查询的结果添加到FileMaker布局中。通常,您需要将结果写入全局字段,全局变量或常规字段。如果您想以一种体面的方式显示来自SQL查询的表格数据,则需要生成HTML并将其吐到布局上的Web Viewer元素中的数据url中(即,将HTML前缀为“ data:text / html,”)

2021-05-16