FileMaker Pro与Microsoft Access类似。我想获取此FileMaker数据并将其导入PostgreSQL数据库。
有什么建议吗?我应该写一个程序来做这个吗?或者我应该将FileMaker数据放入Access并从那里导入数据?
感谢您输入!!
答案 0 :(得分:2)
是的,你可以这样做。您可以在此过程中使用Access作为中间层,但除了个人偏好之外没有理由这样做。
首先,我建议您花一些时间分析您的FileMaker数据库。所有数据表是否都采用标准关系原则设计? (FileMaker支持,但不强制执行关系设计)。字段类型是逻辑定义的,主/辅键是否一致且结构良好?如果没有,我强烈建议您在继续迁移之前解决这些问题(如果您愿意,可以在FileMaker或Access中解决)。
其次,我想看看是否存在任何不能完全传输的特殊FileMaker数据结构。以下是需要注意的主要内容:
完成此准备后,您可以轻松地将FileMaker中的数据导出为CSV等标准格式,然后可以将其直接导入到新的Postgres表格中。这里要注意的关键事项是:
最后,当然,在Postgres中定义新表并导入CSV数据。
答案 1 :(得分:0)
正如大家所说,将数据传输到Access只会导致额外的工作,这是完全没必要的,
我建议使用FileMaker ODBC提取数据,或使用Postgres ODBC驱动程序并使用"执行SQL"从FileMaker插入数据。脚本步入PostgreSQL表。
答案 2 :(得分:0)
除非有一些令人信服的,未说明的理由,否则我不会通过Access。
如果这只是一次性例行程序,那么导出一些常见格式(例如CSV)可能是最简单的。
如果你需要重复并保持实时,我会查看到FileMaker的ODBC连接,并在PostgreSQL系统的应用程序逻辑中编写例程。
答案 3 :(得分:0)
将数据传输到Access时可能出现的一个问题是Access限制为每个表最多255个字段。客户发送给我进行转换的FileMaker数据库通常有数百个字段。
当我使用FmPro Migrator执行这些转换时,我总是在数据库之间建立直接连接 - 以便在FileMaker数据中保留UTF8编码。
另一个考虑因素是,您是否还希望从FileMaker转换GUI和业务逻辑(脚本)以与PostgreSQL数据库一起使用。 FileMaker中的对象可以作为XML提取,从而可以将这些对象转换为在另一个应用程序中等效且有用的对象。今天GUI的一个流行选择是PHP Web应用程序。
因此,例如,FileMaker布局中的元素(字段,图像,文本标签,矢量图形对象)可以在PHP Web应用程序中转换为HTML,CSS和JavaScript。
FileMaker值列表(用于下拉菜单,单选按钮和复选框组)可以在PHP中定义为数组。这可以是静态值数组,也可以是在运行时检索的动态数组 - 以模拟原始功能。
出于性能原因,将FileMaker Unstored Calculation和Summary字段转换为SQL视图非常有用。这样,计算在数据库服务器中执行,而不是通过Web应用程序中的PHP执行。