保存、导入和导出数据 > 将数据导入 FileMaker Pro Advanced > 在导入过程中设置导入操作和映射字段
 

在导入过程中设置导入操作和映射字段

将数据导入到现有 FileMaker Pro Advanced 文件时,在选择要导入的文件或数据源之后,将显示"导入字段映射"对话框。使用此对话框指定以下导入选项:

导入操作:指定如何将数据导入到现有文件中。可以向文件中添加新记录,更新文件中的匹配记录,也可以替换文件中的现有记录。请参阅将数据导入到现有文件的方法

字段映射:通过将目标文件中的字段映射到要导入的源数据中的字段来指定从何处导入数据。

可以将任何字段类型中的数据导入任何兼容的字段(计算字段合计字段除外)。如果要从其他 FileMaker Pro Advanced 文件导入或者导入包含图像、视频或 PDF 文件的文件夹,则只能导入到容器字段。将数据导入全局字段时,从源文件中导入到该字段的最后一个项目将决定全局字段值。

要在导入过程中设置导入操作和映射字段:

1. 选择要导入到现有 FileMaker Pro Advanced 文件的文件或数据源(前提是尚未执行此操作)。

按照将数据导入到现有文件同时导入文件夹中的多个文件、或导入 XML 数据中的指示操作。"导入字段映射"对话框打开。

2. 单击 匹配目标字段图标,选择要执行的导入操作。

 

目的

选择

将新记录添加到目标文件的末尾

添加

注释  如果导入操作的目标表中不包含数据,则只能选择"添加";由于没有要更新或替换的数据,因此下面介绍的其他选项将不可用。

使用源文件的匹配记录中的数据更新目标文件中的数据

更新

从每个文件中的第一条记录开始,使用要从源文件中导入的记录依次替换目标文件中的记录的搜索结果

替换

对于"更新"或"替换",选择"将其余数据作为新记录添加"还可以将源文件中的任何其他记录作为目标文件中的新记录进行添加。

重要事项  更新匹配记录或替换现有记录会改写目标文件中的数据,并且无法撤消。要保护您的数据,请选择"文件"菜单 >"另存为"以创建目标 FileMaker Pro Advanced 文件的备份副本。只能对本地文件(位于您计算机上的文件)执行此操作。请确保您了解更新或替换记录的工作方式。请参阅将数据导入 FileMaker Pro Advanced

3. 如果要从其他 FileMaker Pro Advanced 文件中导入数据,并且该文件中包含多个表,请从""列表中选择要导入的表。

4. 如果您要导入的源数据中的记录包含字段名称(列标题)而不是数据,请单击 自动输入选项图标前进箭头 直到包含字段名称的记录出现。然后选择"用作字段名称"。

只有后续记录可用于导入。

5. 如果目标文件包含多个表,请从"目标"列表中选择表。

或选择"新表"。请参阅关于为导入数据创建新表

6. 对于"目标字段",选择目标字段以指示导入或更新源数据的位置。

您可以执行下列任意操作,将目标字段映射到源字段:

要更改选择,请单击当前目标字段名称,然后从列表中选择另一字段。要在列表中查找字段,请在搜索框中键入字段名称的几个字符。列表中目标字段名称旁边的指示符显示该字段是否可用于映射。

 

字段映射指示符

说明

通过添加记录进行导入的概念图

当前未映射到源字段

管理数据库按钮

当前映射到源字段

未映射的目标字段图标

当前映射为匹配字段

后退箭头

无法映射到源字段,因为目标字段是不兼容的字段类型,或者您没有足够的访问权限

目标文件中的匹配字段不能是容器、合计或全局字段。匹配字段的字段类型应与匹配字段中的数据类型相对应。例如,数值字段不应与包含文本的字段相匹配。如果导入操作设置为"更新",则仅可用作匹配字段的目标字段将显示在"仅用于匹配"下的列表中。选择其中一个字段会将映射设置为"匹配字段"。

无法映射到源字段的目标字段将显示在"不用于导入"下的列表中。您无法将源数据导入这些字段或将其用作匹配字段。

要预览您要导入的数据,请单击 自动输入选项图标前进箭头

要创建或更改您要导入的表中的字段,请单击目标字段名称,然后单击 前进箭头,或在"目标"列表中选择"管理数据库"。在"管理数据库"对话框中进行更改,然后单击"确定"。(如果该按钮显示为灰色,则可能是因为您没有足够的访问权限,或者是因为数据库在网络上共享,当前不允许进行数据库更改。请参阅共享和托管文件。)

要将相对于源字段的目标字段同时重新排序,请从"目标字段"列的菜单中选择以下选项之一:

 

选择此选项

按下列方式列出字段

匹配名称

目标表和源表中相匹配的字段名

每次选择此选项时,FileMaker Pro Advanced 都将动态匹配字段名。(如果源数据不包含字段名,则此选项不可用。)

上次顺序

FileMaker Pro Advanced 上次将数据导入到该表时使用的顺序,或者是默认顺序(创建顺序)

创建顺序

创建字段时采用的顺序

字段名称

字母顺序

字段类型

字段类型

客户订单

自定义顺序(通过更改目标字段创建)。

7. 在列表中每对字段之间的"映射"列中,单击当前映射并选择要执行的字段映射。

您可以选择是否将每个字段导入到目标字段中,也可以使用字段对作为匹配字段来更新匹配记录。

注释  在下列情况下,将不导入源字段中的数据:

将"映射"设置为"不导入"。对于您要导入的每个源字段,将"映射"设置为"导入"并选择目标字段。如有必要,请创建一个新的目标字段。

源和目标字段之间出现"无效目标",表示目标字段类型不支持源字段数据。您无法将数据导入到计算或合计字段中,也无法将某些不匹配的数据类型(如容器数据)导入到文本字段中。("无效目标"还可能表示访问权限不允许将数据导入到特定的目标字段中。)

8. 对于已定义自动数据输入(自动输入)的目标字段,选择是否在导入时执行自动输入选项(例如,在"修改日期"字段中输入日期)。

 

要在使用自动输入选项定义的字段中自动输入新数据

请执行此操作

对于单个目标字段

单击"目标字段"列中字段旁的 每个字段执行自动输入选项图标(选中),并选择执行自动输入选项每个字段执行自动输入选项图标 表示选中的选项。否则,对于该字段,将不输入自动输入值。

当前未映射的目标字段不会显示在"目标字段"列中。要为具有自动输入选项的任何目标字段设置此选项,请在"导入选项"区域中单击 每个字段执行自动输入选项图标 并选择字段。

对于所有目标字段

在"导入选项"区域中,选择导入期间为字段执行自动输入选项。否则,对于所有目标字段,将不输入自动输入值。

注释  如果选择此选项,然后取消选择某些单个目标字段的选项,此选项将指示混合状态。要查看影响此选项状态的所有目标字段,在"导入选项"区域中,单击 每个字段执行自动输入选项图标

注释  如果您要导入设置为自动输入值(例如修改者姓名、修改日期或时间,或者查找数据)的字段,选择此选项会使用自动输入的数据改写您导入的数据。

请参阅定义自动数据输入

9. 在"导入选项"区域中,根据需要选择其他选项。

 

目的

请执行此操作

选择源文件中使用的字符编码

对于"源文件的字符集",请选择字符编码。

"字符集"列表可能呈灰色或可用状态:

如果该列表呈灰色,则 FileMaker Pro Advanced 将确定文件的编码并自动选择。

如果该列表处于可用状态,则 FileMaker Pro Advanced 无法确定文件编码,并根据您的操作系统和您导入的文件格式选择适当的字符编码。如果选择其他编码,FileMaker Pro Advanced 将扫描导入数据,如果该数据包含的字符不合法,则将显示警报消息。

注释  如果要导入 16 位 Unicode (UTF-16) 文本文件,则该文件必须包含 Unicode 标准"Byte Order Mark (BOM)"。如果缺少 BOM,FileMaker Pro Advanced 将无法正确识别文件编码。

指定源文件中使用的字段分隔符,其采用自定义分隔值格式

对于"源文件的自动分隔符",从列表中选择字符(或选择"其他"并键入字符)以分隔源文件中的字段值。

只有当您在步骤 1 中为"文件类型"(Windows) 或"显示"(macOS) 选择"自定义分隔值"时,此选项才可用。

在导入期间禁止容器字段内容的验证检查,以允许目标文件使用现有的外部容器字段内容

选择"保留外部容器存储"。

例如,使用此选项可将数据快速导入克隆的文件副本,而不必解密再重新加密文件才能将容器数据移动到目标文件。

源字段和目标字段的基本目录必须相同。

指定如何从源文件中的重复字段中导入数据

对于"重复字段",选择:

"将值保留在原始记录中",将字段作为重复字段进行维护。

"将值拆分到单独记录中",将每个重复值导入到单独的记录中。(可以使用此选项处理重复字段中的各个值,例如对其进行排序或汇总。)

注释  如果将重复字段数据拆分到单独的记录中,则将在每个单独的记录中复制导入的任何非重复字段。例如,如果源文件中的某条记录有三个重复值,则通过将它们拆分到单独的记录中可导入三条记录,每条记录都是完全相同的(重复字段中的值除外)。

10. 单击导入

注释  如果要导入大量数据,则可能会看到显示导入过程进度的"导入"对话框。要停止导入,请单击"停止"。已导入的记录保留在目标文件中(并不撤消此导入)。要永久删除已导入的记录,请选择"记录"菜单 >"删除所有记录"。

11. 在"导入合计"对话框中,请记下导入记录的数目和跳过的任何数据。然后单击"确定"。

"导入合计"对话框显示三条统计信息,详细说明了导入的记录和跳过的任何数据:

 

统计信息

说明

添加或更新的记录

导入过程中在目标文件中添加或更新的记录总数。

注释  如果更新的是匹配记录并且源文件中有多个记录与目标文件搜索结果中的记录匹配,则该数值还将包括相同记录的多个更新。请参阅"注释"部分。

因为错误而跳过记录

目标文件中由于以下原因跳过的记录数:

权限错误:访问权限禁止修改一条或多条记录。

记录被锁定:一条或多条记录由于在其他位置被访问(在其他窗口中由同一用户访问,或在文件处于共享状态时由其他客户端访问)而无法修改。

验证错误:由于不满足记录级的字段验证要求,导致无法修改一条或多条记录,也无法提交该记录。请参阅关于在导入过程中验证数据

因为错误而跳过字段

目标文件中由于以下原因跳过的字段数:

验证错误:由于数据不满足为字段定义的验证要求,导致无法导入一个或多个字段。请参阅关于在导入过程中验证数据

权限错误:访问权限禁止修改一个或多个字段。

跳过的字段不会阻止相同记录中其他字段的更新。

注释 

导入的记录将成为搜索结果。导入后,检查搜索结果中的数据。选择"记录"菜单 >"显示所有记录"。

如果要更新或替换记录,请在丢弃文件的备份副本之前确保记录正确。

如果记录中所有指定的匹配字段均为空,则不会更新该记录。

如果源文件中的记录与目标文件中的多条记录匹配,则将更新目标文件的搜索结果中所有匹配的记录。

如果源文件中的一条记录与目标文件的搜索结果中的一条记录匹配,则将使用源文件中最后一个匹配记录更新目标文件。(导入过程中,目标文件中的匹配记录实际上被多次更新(分别被源文件中的每个匹配记录更新一次),因此用于更新匹配目标记录的最后一个匹配源记录将决定其最终内容。

无论更新前的搜索结果如何,更新后的搜索结果均包含已更新的记录(即匹配的记录)和任何新添加的记录。

要为多个字段设置字段映射,请在"源字段"列中按住 Ctrl 键并单击 (Windows) 或按住 Command 键并单击 (macOS) 每行,或按住 Shift 键并单击多行。然后单击其中一个选定字段的当前映射并选择一个映射。(您也可以按空格键,使用 Tab 键、向上箭头键或向下箭头键,然后按空格键或返回键以选择字段映射。)