将数据导入、链接或移动到 SharePoint

将数据导入、链接或移动到 SharePoint

想要合并和增强 Access 和 SharePoint? 为此,可以在两者之间导入、链接或移动数据。 导入操作将创建一个 SharePoint 列表副本, Access 数据库。 链接将连接到另一个程序中的数据,以便您可以查看和编辑 SharePoint 和 Access 。 移动操作在 SharePoint 网站上创建列表,这些列表仍链接到数据库中的表并维护其关系。

警告    虽然可以将 Access 数据库文件保存到 OneDrive 或 SharePoint 文档库,但建议避免从这些位置打开 Access 数据库。 文件可能会下载到本地进行编辑,然后在将更改保存到 SharePoint 后再次上载。 如果多个用户从 SharePoint 打开 Access 数据库,可能会创建数据库的多个副本,并且可能会发生一些意外行为。 此建议适用于所有类型的 Access 文件,包括单一数据库、拆分数据库以及 .accdb、.accdc、.accde 和 .accdr 文件格式。 有关部署 Access 的信息,请参阅"部署 Access 应用程序"。

你要做什么?

导入 SharePoint 列表

导入数据时,Access 将创建一个表,并将源列表(或视图)中的列和项目作为字段和记录复制到该表中。 在执行导入操作的过程中,您可以指定要复制的列表,对于每个选定列表可以指定是要导入整个列表还是只导入特定视图。 导入操作结束时,可以选择将该次导入操作的详细信息另存为规格。 导入规格可帮助您日后重复该导入操作,而不必每次都逐步完成“导入向导”。

下面列出了将 SharePoint 列表导入 Access 数据库的常见原因:

  • 要将数据(例如联系人列表)永久地移至 Access 数据库,因为 SharePoint 网站上您不再需要该信息。 您可以将列表导入 Access中,然后从 SharePoint 网站删除它。

  • 您的部门或工作组使用 Access,但偶尔会要求您从 SharePoint 列表获取必须合并到某一数据库的其他数据。

请在导入列表之前完成这些步骤

  1. 查找包含要复制的列表的 SharePoint 网站,并记下该网站的地址。

    有效的网站地址以 http://https:// 开头,后跟服务器名称,并以服务器上特定网站的路径结尾。

  2. 识别要复制到数据库的列表,然后决定要复制整个列表还是只复制特定视图。 可以在一个导入操作中导入多个列表,但是只能导入每个列表的一个视图。 如有必要,请创建只包含您感兴趣的列和项目的视图。

  3. 请检查源列表或源视图中的列。

    下表介绍了在导入不同元素时要牢记的一些注意事项:

    元素

    注意事项

    Access 只导入前 256 列,因为其在一个表中只支持 256 个字段。 若要避免此问题,请创建 SharePoint 中列表的视图,并仅添加您需要的列,确保列总数不超过 256。 然后使用 ImportSharePointList 宏操作指定预期的视图 ID。

    文件夹

    SharePoint 列表中的每个文件夹将变成 Access 表中的一个记录。 文件夹内的项目也显示为记录,紧邻对应于该文件夹的记录之下。

    查阅列

    如果源列在另一个列表中查找值,Access 将导入显示值作为字段本身的一部分。 Access 不会导入已查找的表。 如果要重新创建到另一个表的查找,请参阅"链接到SharePoint 列表"和"将数据移动到 SharePoint"。

    计算列

    计算列中的结果会被复制到其数据类型取决于计算结果的数据类型的字段。 执行该计算的表达式不会被复制。

    附件

    列表的附件列被复制到名为“附件”的字段。

    多值列

    类型为“选择”或“查阅”的列可以包含多个值。 当您导入支持多个值的列时,Access 将创建一个支持多个值的列。

    RTF 格式

    包含格式文本格式的列将导入 Access 为长文本字段。 长 文本字段 的"文本格式"属性设置为 "格式文本",并保留格式。

    关系

    Access 不会在导入操作结束时自动在相关表之间创建关系。 必须通过使用“关系”选项卡上的选项,在各个新表和现有表之间手动创建关系。 要显示“关系”选项卡,请在“数据库工具”选项卡的“关系”组中,单击“关系”。

  4. 确定要向其导入列表的数据库。

    确保你具有将数据添加到该数据库的必要权限。 如果不想将数据存储在任何现有数据库中,请创建一个空白数据库。

  5. 检查数据库中的表。

    导入操作创建与 SharePoint 列表同名的表。 如果该名称已被使用, Access 将"1"追加到新表名称(例如,对于"联系人 1",如果"联系人 1"也已在使用中, Access 将创建"联系人 2",以此类比。

导入列表

  1. 打开将存储导入数据的 Access 数据库。 如果不想将数据存储在任何现有的数据库中,请创建一个空白数据库。

  2. Access 版本不同,导入/链接文本向导的位置会略有不同。 选择与你的 Access 版本相匹配的步骤:

    • 如果您使用的是 Microsoft 365 或 Access 2019,请在"外部数据"选项卡上的"导入& 链接"组中,单击"新建数据源 > 从Online Services > SharePoint 列表"。

    • 如果使用的是 Access 2016、Access 2013 或 Access 2010,在“外部数据”选项卡上的“导入并链接​​”组中,单击“其他”按钮以显示选项的下拉列表,然后单击“SharePoint 列表​​”。

  3. Access 将打开“获取外部数据 - SharePoint 网站”对话框。

    在“获取外部数据 - SharePoint 网站”对话框中选择导入或链接到 SharePoint 网站。

  4. 在向导中,指定源网站的地址。

  5. 选择“将源数据导入当前数据库的新表中”,然后单击“下一步”

  6. 从向导显示的列表中选择要导入的列表。

    注意    您可以链接到 SharePoint 库,但只能在 SharePoint 中添加文档。

  7. “要导入的项目”列中,为每个选定列表选择所需的视图。

  8. 标有“对于查找另一列表中所存储的值的字段,导入其显示值而非 ID”的复选框控制为选定列表中的查阅列导入哪些数据。 请执行下列操作之一:

    • 要将显示值作为字段本身的一部分导入,请选中该复选框。 在这种情况下,该字段将不查找其他表中的值。

    • 如需目标字段查找其他表中的值,请清除该复选框。 这样做会将显示值行的 ID 复制到目标字段。 ID 是在 Access 中定义查阅字段所必需的。

    导入 ID 时,您必须导入当前为查阅列提供值的列表(除非目标数据库已经包含可以充当查阅表的表)。

    导入操作在对应字段中放置 ID,但是它不设置使字段像查阅字段那样工作所需的所有属性。 若要详细了解如何设置此类字段的查找属性,请参阅"创建或删除查找字段"。

  9. 单击“确定”。

Access 导入列表,然后在向导的最后一页上显示操作的状态。 如果打算以后重复导入操作,则将详细信息保存为导入规格。 Access在导入操作过程中不会覆盖数据库中的表,您不能将列表或视图的内容追加到现有表。

有关导入的其他需知内容

导入的相关任务

完成导入操作后,应考虑执行一些其他任务:

验证数据类型    Access 会为源列对应的每个字段选择适当的数据类型。 验证每个字段及其设置,确保对所有字段的设置方式满意。

调查其他字段    根据表所基于的列表类型,您可能还注意到表中存在一些额外的字段,例如 (、修改或 CreatedBy) 。 如果在 Access 数据库中不需要这些字段,则可以安全地删除它们。

返回页首

链接到 SharePoint 列表

链接到 SharePoint 列表时,Access 将创建一个反映源列表的结构和内容的新表,该表通常称为链接表。 与导入不同,链接操作创建的链接只指向该列表,而不是指向该列表的任何特定视图。

在以下两方面链接比导入的功能更强大:

  • 添加和更新数据    通过浏览找到 SharePoint 网站,或者通过在 Access 内使用数据表视图或窗体视图,可以对数据进行更改。 在一个位置中进行的更改会在另一位置中反映出来。 如果要进行结构性更改(如删除或更改列),则必须通过在 SharePoint 网站上打开该列表来完成。 使用 Access 时,不能添加、删除或修改链接表中的字段。

  • 查阅表格    链接至 SharePoint 列表时,Access 会自动为所有查阅列表创建链接表(除非查阅列表已经链接到数据库)。 如果查阅列表包含查阅其他列表的列,则在链接操作中也包括那些列表,以便每个链接表的查阅列表在数据库中都具有对应的链接表。 Access 还在这些链接表之间创建关系。

链接到 SharePoint 列表的常见情况

从 Access 数据库链接到 SharePoint 列表的原因通常有以下几种:

  • 您的部门或工作组 Access 丰富的报告和查询功能,并使用 SharePoint 进行团队协作和通信。 单个工作组创建跟踪各种内容(如联系人和问题)的列表,但是通常必须将该列表数据导入到数据库中以进行聚合和报告。 链接是合适的选择,因为它同时允许 SharePoint 网站用户和数据库用户添加和更新数据以及始终查看和使用最新数据。

  • 你是最近 Access SharePoint 的用户。 您已将几个数据库迁移到工作组 SharePoint 网站,而且这些数据库中的大多数表是链接表。 从现在开始,您将创建 SharePoint 列表(而不是创建本地表),然后将其链接到数据库中的这些列表。

  • 您希望继续在 SharePoint 网站上存储这些列表,而且希望使用 Access 内的最新数据运行查询和打印报表。

准备链接到 SharePoint 列表

  1. 查找具有您要链接到的列表的 SharePoint 网站,并记住该网站的地址。

    有效的网站地址以 http://https:// 开头,后跟服务器名称,并以服务器上特定网站的路径结尾。

  2. 确定要链接到哪些列表。 可以在单个链接操作中链接到多个列表,但不能链接到调查、讨论或任何列表的特定视图。

  3. 检查源列表中的列。 下表介绍了在链接到不同元素时要牢记的一些注意事项。

    元素

    注意事项

    Access 仅链接前 256 列,因为它仅支持表中的 256 个字段。 若要避免此问题,请创建 SharePoint 中列表的视图,并仅添加您需要的列,确保列总数不超过 256。 然后使用 ImportSharePointList 宏操作创建指定预期视图 ID 的链接表。

    文件夹

    SharePoint 列表中的每个文件夹在 Access 表中都显示为记录。 文件夹内的项目也显示为记录,紧邻对应于该文件夹的记录之下。

    查阅列

    如果源列查阅其他列表中的值,而且相关列表尚未存在于数据库中,则 Access 将自动为相关列表创建链接表。

    注意    Access 还会创建与 SharePoint 用户信息列表对应的 UserInfo 表。 SharePoint 使用此列表查找 SharePoint 列的用户帐户信息,例如电子邮件、图片、用户名,例如 CreatedBy、ModifiedBy 和人员或组。 此 SharePoint 用户信息列表仅对网站管理员可见。

    计算列

    计算列中的结果在对应字段中显示,但是在 Access 中您无法查看或修改公式。

    附件

    列表的附件列显示为“附件”字段。

    只读列

    SharePoint 列表中的只读列在 Access 中仍是只读的。 此外,在 Access 中您可能无法添加、删除或修改列。

    多值列

    类型为“选择”或“查阅”的列可以包含多个值。 对于这样的列,链接操作将创建支持多个值的字段。 如果源列的类型为“查阅”,则在链接表中创建多值查阅列。

  4. 确定您要在其中创建链接表的数据库。 确保您具有将数据添加到该数据库的必要权限。 如果您不想在任何现有的数据库中存储数据,请创建一个新的空白数据库。

  5. 检查数据库中的表。 链接到 SharePoint 列表时,将创建与源列表同名的表。 如果该名称已在使用中,Access 会在新表名后附加 “1”,例如“联系人1”。 (如果“联系人1”也已经被占用,Access 将创建“联系人2”,以此类推。 )该规则也适用于相关列表。

链接到数据

  1. 打开目标数据库。

  2. Access 版本不同,导入/链接文本向导的位置会略有不同。 选择与你的 Access 版本相匹配的步骤:

    • 如果您使用的是 Microsoft 365 或 Access 2019,请在"外部数据"选项卡上的"导入& 链接"组中,单击"新建数据源 > 从Online Services > SharePoint 列表"。

    • 如果使用的是 Access 2016、Access 2013 或 Access 2010,在“外部数据”选项卡上的“导入并链接​​”组中,单击“其他”按钮以显示选项的下拉列表,然后单击“SharePoint 列表​​”。

  3. Access 将打开“获取外部数据 - SharePoint 网站”对话框。

    在“获取外部数据 - SharePoint 网站”对话框中选择导入或链接到 SharePoint 网站。

  4. 在向导中,指定源网站的地址。

  5. 选择“通过创建链接表来链接到数据源”,然后单击“下一步”

    向导将显示可用于链接的列表。

  6. 选择要链接到的列表,然后单击“确定”

    注意    如果一些列表已链接到当前数据库,则将选中对应于那些列表的复选框。 如果要删除任何链接,清除要删除链接的复选框。

    Access 将尝试为在该操作过程中选择的列表和每个相关列表创建链接表。 此外,Access 将尝试刷新与在向导中选中的列表相对应的链接表。 Access 还会在表之间创建关系。 与导入操作不同,链接操作维护查阅字段和相关表之间的查阅属性设置。 您不必在表的设计视图中手动设置查阅字段的属性。

  7. 在数据表视图中检查新的链接表。 确保正确显示了所有字段和记录。

    Access 为对应于源列的每个字段选择正确的数据类型。 值得注意的是,每次打开链接表或源列表时,你都会看到其中显示了最新数据。 但是,对列表进行的结构性更改不会自动反映在链接表中。 要通过应用最新的列表结构来更新链接表,请右键单击导航窗格中的表,指向“更多选项”,然后单击“刷新列表”。

请注意   Access 链接操作过程中,永远不会覆盖数据库中的表。 此外,也不能将 SharePoint 列表的内容追加到现有表。

返回页首

将数据移动到 SharePoint

将数据移动到 SharePoint 是有效创建后端数据库的一种方法,但在这种情况下,数据包含在 SharePoint 列表中。 前端仍是 Access 数据库,可以像拆分数据库一样部署它。 如果可能,"将表格导出到 SharePoint 向导"会将数据移动到基于 SharePoint 网站上列表模板的列表,如 联系人列表 。 如果表无法与列表模板匹配,则该表将成为 SharePoint 站点上的自定义列表。 操作可能需要一些时间,具体取决于数据库大小、对象数量和系统性能。 如果在过程中改变了主意,可以单击“停止”将其取消。

向导在计算机上创建一个数据库的备份副本。 并在 Access 中创建从表格指向列表的链接,以便在使用 Access 时可轻松找到 SharePoint 网站上的数据。 如果出现问题,"将表导出到 SharePoint 向导"会报告问题,将其作为日志表保存在 Access 数据库中,可用于帮助进行故障排除。

提示    请考虑创建单独的 SharePoint 网站,将列表保持在自包含位置。

注意    在 Access 2007 中,"将表格导出到 SharePoint" 向导称为"移动到 SharePoint 网站向导",它不会在 SharePoint 列表上创建参照完整性。

使用"将表导出到 SharePoint"向导

  1. “数据库工具”选项卡上的“移动数据”组中,单击“SharePoint”。 此选项仅在数据库以 .accdb 文件格式保存时可用。

  2. 按照"将表格导出到 SharePoint向导"中的步骤操作,包括指定 SharePoint 网站的位置。

    若要取消该过程,请单击“停止”。

  3. 在该向导的最后一页上,选中“显示详细信息”复选框以查看有关迁移的更多详细信息。

    此向导页介绍已链接到列表的表并提供有关数据库的备份位置和 URL 的信息。 如果遇到迁移问题,此向导页还会提供警告,并提供日志表位置,以便您可以从中查看有关问题的更多详细信息。

  4. 当该向导完成其操作时,单击“完成”

    如果该向导显示警告,应查阅日志表并采取任何必要措施,以确保数据迁移成功。 例如,某些字段可能未进行迁移或可能转换为与 SharePoint 列表兼容的其他数据类型。

注意    Access 还会创建与 SharePoint 用户信息列表对应的 UserInfo 表。 SharePoint 使用此列表查找 SharePoint 列的用户帐户信息,例如电子邮件、图片、用户名,例如 CreatedBy、ModifiedBy 和人员或组。 此 SharePoint 用户信息列表仅对网站管理员可见。

可能会遇到的限制

完成 "将表导出到 SharePoint 向导 "后,如果 Access 遇到数据任何问题,则会显示一条消息。 Access 会创建一个名为“迁移到 SharePoint 网站时出现的问题”的表,并将该表添加到数据库。 “迁移到 SharePoint 网站时出现的问题”表存储在数据库中,但不会发布为 SharePoint 网站上的列表。

下表列举了数据迁移方式的限制,通常是因为 Access 和 SharePoint 具有的功能不一致,有时是因为二者具有的数据类型不一致。 例如,如果您的 Access 表支持 引用完整性 ,则 SharePoint 网站的列表中会强制实施它。 下表中的信息可以帮助决定是否迁移数据,如果正在查看“迁移到 SharePoint 网站时出现的问题”表中报告的任何问题,此信息也很有帮助。

数据类型或问题

问题

结果

COM 对象数据类型

SharePoint 网站不支持 COM 对象数据类型。

不迁移字段。

Binary 数据类型

SharePoint 网站不支持 Binary 数据类型。

不迁移字段。

日期

SharePoint 网站不支持早于 1900 年的日期。

不迁移含有早于 1900 年的日期的数据。

文本字段中存在换行符

SharePoint 网站不支持在单行文本字段中使用换行符。

字段转换为多行文本字段或备注字段。

Decimal 数据类型

SharePoint 网站不支持 Decimal 数据类型。

改为使用数字字段或双整型字段。

复制 ID 数据类型

SharePoint 网站不支持复制 ID 数据类型。

根据数据类型,改为使用单行文本数据类型。

SharePoint 列表中不支持的默认值

SharePoint 网站接受静态默认值,例如文本、数字和标准日期。 不迁移 Access 中动态的默认值。

不迁移某些默认值属性。

唯一索引字段

SharePoint 网站为其在列表中的 ID 列使用一个唯一索引字段。

不迁移其他唯一索引字段或字段集。

自动进行枚举的字段(ID 字段除外)

SharePoint 网站只支持对列表中 ID 列使用的字段进行自动编号。

除 ID 列以外的列不应用自动编号。

无法在其中创建查找的关系

SharePoint 网站中不支持某些关系,例如当主键与 ID 列不相关或不是整数时。

不迁移该关系。

返回页首

在 Access 和 SharePoint 之间链接数据的优点

创建链接的 SharePoint 列表后,用户可以在 SharePoint 网站上或在 Access 中的链接表中处理列表。 使用 Access 中的表格或窗体或者在 SharePoint 网站上编辑列表,即可输入数据。 以下指南和提示可帮助你利用 Access 和 SharePoint 之间的链接列表,并利用这两者的组合。

问题跟踪    Access 具有直接与 SharePoint 网站上的问题跟踪列表交互的问题跟踪模板。 架构相同,Access 解决方案可以用作前端(例如,通过窗体和查询)来访问 SharePoint 网站的数据。

从回收站检索数据    您可以使用 SharePoint 网站上回收站轻松查看已删除的记录并恢复意外删除的信息。

快速启动    若要在 SharePoint 网站上查看列表,请单击"快速启动" 上的 "查看所有网站内容"。 您可能需要在 Web 浏览器中刷新该页面。 若要使列表显示在 SharePoint 网站的"快速启动"上,您可以更改 SharePoint 网站上的列表设置。 有关详细信息,请参阅"自定义 SharePoint 网站的导航"。

修订历史记录    在 Access 中,可以将"长文本"字段的 " 追加"属性设置为"是",以便 Access 保留该字段的更改历史记录。 同样,在 SharePoint 中,您可以查看列的版本历史记录。 例如,可以恢复以前版本的列或跟踪更改发生的时间。 如果链接到启用了版本历史记录的 SharePoint 列表,Access 将创建一个长文本字段," 追加 "属性设置为"是"。 如果移动的 Access 表具有长文本字段,其 Append 属性设置为"是",则创建包含版本历史记录的 SharePoint 列表。

总之,Access 可以查看 SharePoint 中的历史更改,SharePoint 可以查看 Access 中的历史更改。 有关详细信息,请参阅" 创建或删除长文本 "字段,以及查看列表或库中项目或 文件的版本历史记录

脱机工作    您可以使用 Access 脱机处理链接到 SharePoint 列表的数据。 如果需要在 SharePoint 不可用时继续工作,这非常有用。 SharePoint 可用后,您可以同步更改并轻松解决任何冲突。 有关详细信息,请参阅"脱机使用链接到 SharePoint 列表的表"。

订阅警报    可以订阅警报,以便知道何时对列表项进行更改。 可以通过短信接收来自电子邮件或短信 (警报) 。 有关详细信息,请参阅 "创建警报",在 SharePoint中的文件或文件夹更改时收到通知。

管理 Sharepoint 列表权限    建议检查链接列表上的 SharePoint 权限,以确保不会无意中授予对机密或私人数据的访问权限。 在 Sharepoint 中,您可以分配不同级别的权限,并选择性地允许或拒绝特定用户的访问权限。 如果需要限制对数据库中少数敏感项目的访问权限,甚至可以对 SharePoint 网站上特定列表项设置权限。 有关详细信息,请参阅"自定义 SharePoint 列表或库的权限"。

批量编辑    有时,您需要对列表数据进行大量更改,例如捕获状态字段、添加大量批注,以及使数据更新。 这称为批量编辑,使用 Access 进行这些更改通常更高效。

报表分布    如果要使用 Access 从链接列表数据创建报表,可以通过将报表导出到 SharePoint 库,以 PDF 文件格式广泛分发这些报表。 此库可以有效地充当报告中心,因为 PDF 文件在 Adobe Acrobat 阅读器中打开,方便阅读、分页和搜索。 为报表加盖时间戳始终是一个不错的主意,以便人们了解何时捕获数据。

使用 SharePoint 创建 Access 表    可基于 SharePoint 列表创建 Access 表。 您可能会发现这是一种创建表的简便快捷方法,其用途和字段与"联系人、任务、问题和事件"列表类似。 Access 还会创建相应的 UserInfo 表。 有关详细信息,请参阅"创建表并添加字段"中的"使用 SharePoint 网站创建 表"部分

Microsoft Power Platform   可通过多种方式在 Microsoft Power Platform 中点击该功能,使用 Access 中的链接 SharePoint 列表在许多设备上显示信息:

移动应用    您可以使用移动设备处理链接到 SharePoint 列表的 Access 数据。 可以查看列表项和进行轻松编辑。 有关详细信息,请参阅适用于 Android 的 SharePoint 移动应用适用于 iOS 的 SharePoint 移动应用

返回页首

使用 Access Services

重要提示    已从下一版本的 SharePoint 中删除 Access Services 2010 和 Access Services 2013。 建议不要创建新的 web 应用,可将现有应用迁移到替代平台,如Microsoft Power App

发布 Web 数据库时,Access Services 将创建包含此数据库的 SharePoint 网站。 所有数据库对象和数据均移至该网站中的 SharePoint 列表。

发布数据库时,将其移至网站。 您可以创建在浏览器窗口中运行的 Web 窗体和报表,也可以创建标准的 Access 对象(有时称为“客户端”对象以使其与 Web 对象区分开来)。 您必须在计算机上已安装 Access 才能使用客户端 Access 对象,但是 SharePoint 上的所有数据库对象都是共享的。

注意: 如果您在计算机上安装了 Access,则可以从 Web 数据库使用客户端对象,否则,您只能使用 Web 数据库对象。

Access Services 为您提供了创建可在 Web 上使用的数据库的平台。 您可以使用 Access 2010 和 SharePoint 设计和发布 Web 数据库,用户可以在 Web 浏览器中使用此 Web 数据库。

注意: 你需要拥有要在其中发布数据库的 SharePoint 网站的“设计者”权限。

窗体、报表和用户界面宏在浏览器中运行。

如果使用网络数据库,则数据存储在 SharePoint 列表中:所有表成为 SharePoint 列表,记录成为列表项目。可使用 SharePoint 权限控制对 Web 数据库的访问。

查询和数据宏在服务器上运行:所有 SQL 处理都在服务器上进行。 这有助于通过限制结果集的流量来提高网络性能。

返回页首

另请参阅

将表或查询导出到 SharePoint 网站

共享 Access 桌面数据库的方法

部署 Access 应用程序

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×