可以链接到或导入 Salesforce 中的数据,Salesforce 是基于云的客户关系管理 (CRM) 业务解决方案。 有关详细信息,请参阅 Salesforce.com。
-
链接到数据时,Access 会创建一个双向连接,同步 Access 和 Salesforce 中数据的更改。
-
导入数据时,Access 会创建数据的一次性副本,这样就不会同步 Access 和 Salesforce 中的数据更改。
注意 仅 Access 2019 的 批量许可 实例或以下 Microsoft 365 企业计划支持链接到 Salesforce 或从 Salesforce 导入数据的功能: Microsoft 365 企业版应用 、 Office 365 企业版 E3 和 Office 365 企业版 E5 。 有关详细信息,请参阅比较Microsoft 365 企业版计划。
开始之前
想要进行得更顺利吗? 那就在链接或导入之前做好以下准备工作:
-
确定必需的连接信息,包括用户名、密码和令牌。 如果尝试通过公司可信 IP 范围以外的 Internet 协议 (IP) 地址访问 Salesforce,必须输入安全令牌(区分大小写的字母数字代码)。 有关详细信息,请参阅重置安全令牌。
-
用于访问 Salesforce 的 ODBC 驱动程序需要一个基于开发人员版、专业版、企业版或无限制版的 Salesforce 帐户。 要使用此驱动程序,必须启用 API 访问。 有关详细信息,请参阅控制单个 API 客户端对你 Salesforce 组织的访问权限。
-
确定要链接到或导入的表。 可通过一次操作链接到或导入多张表。
-
考虑每张表中的列数。 Access 不支持一张表中超过 255 个字段,因此 Access 只链接或导入前 255 列。
-
确定要导入的数据总量。 Access 数据库的最大大小为 2GB,减去系统对象所需的空间。 如果 Salesforce 包含大型表格,可能无法将其全部导入一个 Access 数据库。 该情况下,可考虑链接到数据,而不是导入数据。
-
使用可信位置和 Access 数据库密码,以保证 Access 数据库和连接信息的安全性。 有关详细信息,请参阅决定是否信任数据库和使用数据库密码加密数据库。
-
计划创建附加关系。 Access 将链接到或导入所选表,但 Salesforce 数据模型中的任何相关表均不包含在内。 有关详细信息,请参阅数据模型概述。
Access 不会在这些相关表之间自动创建关系。 可以使用“关系”窗口在新的表和现有表之间手动创建关系。 有关详细信息,请参阅什么是“关系”窗口?和Create、编辑或删除关系。
步骤 1:开始使用
-
选择“外部数据”>“新建数据源”>“来自联机服务”>“来自 Salesforce”。
-
执行下列操作之一:
-
若要导入,请选择“将源数据导入当前数据库的新表中”。
-
若要链接,请选择“通过创建链接表来链接数据源”。
-
-
选择“确定”。
步骤 2:输入凭据和连接字符串参数
在“Microsoft Access - 连接到 Salesforce”对话框中,执行以下操作:
-
在“用户名”和“密码”框中输入用户名和密码。
-
在“安全令牌”框中输入安全令牌。
-
或者,在“其他连接字符串参数”框中输入一个或多个连接参数。
有关详细信息,请参阅连接参数。
步骤 3:选择要链接到或导入的表
-
在“链接表”或“导入对象”对话框的“表”下,选择要链接或导入的每个表,然后单击“确定”。
-
在链接操作中,确定是否选择“保存密码”。
安全性 选择此选项无需在每次打开 Access 并访问数据时输入凭据。 但是,这会在 Access 数据库中存储未加密的密码,这意味着可以访问源内容的用户可以看到用户名和密码。 如果选择此选项,我们强烈建议将 Access 数据库存储在受信任位置并创建 Access 数据库密码。 有关详细信息,请参阅决定是否信任数据库和使用数据库密码加密数据库。
步骤 4:创建规范和任务(仅限导入)
-
在“获取外部数据 - Salesforce 数据库”对话框中,可将导入步骤另存为规范,并创建一个 Outlook 任务来定期自动执行导入操作。 有关详细信息,请参阅将导入或导出操作的详细信息保存为规范。
结果
链接或导入操作完成后,表格将在“导航窗格”中显示,名称与在 Salesforce 表或视图中相同。 导入操作期间,如果该名称已被占用,Access 将在新的表名称后追加“1”。 但你也可将表重命名为更有意义的名称。
在导入操作中,Access 永远不会覆盖数据库中的表。 虽然不能直接将 Salesforce 数据追加到现有表格中,但可创建追加查询,在从相似的表中导入数据之后追加数据。
在链接操作中,如果列在 Salesforce 表中处于只读状态,则在 Access 中也处于只读状态。
提示 若要查看连接字符串,请将鼠标悬停在 Access 导航窗格中的表上。
更新链接表的设计
不能添加、删除或修改列,也不能更改链接表中的数据类型。 若要更改设计,请在 Salesforce 中进行。 要查看 Access 中的设计更改,请更新链接表:
-
选择“外部数据”>“链接表管理器”。
-
选择想要更新的每个链接表,选择“确定”,然后选择“关闭”。
连接参数
下表介绍一些连接参数,可在“Microsoft Access - 连接到 Salesforce”对话框的“其他连接字符串参数”框中输入这些参数。
用分号分隔两个或多个参数。 使用以下语法示例作为指南:
UID=myaccount;BulkBatchSize=9000;UseNumeric=1;
键名称 |
说明 |
默认值 |
必需 |
PWD |
密码,与你在“用户名”字段(UID 键)中提供的用户名相对应。 |
无 |
是 |
UID |
你的 Salesforce 帐户用户名。 |
无 |
是 |
AutoLogout |
若启用此选项 (1),Salesforce 连接将在驱动程序关闭连接时注销。 若禁用此选项 (0),Salesforce 连接在驱动程序关闭连接时不会注销。 |
1 |
否 |
BulkBatchSize |
执行 DML 时单个批处理 API 调用中包含的最大行数。 最大值为 10000 |
5000 |
否 |
CERTSPATH |
包含可信 CA 证书(用于验证服务器)的 PEM 文件的完整路径。 如未设置此选项,那么驱动程序将默认使用由驱动程序安装的可信 CA 证书 PEM 文件 |
驱动程序安装目录内 \lib 子文件夹中的 cacerts.pem 文件。 |
否 |
METADATALEVEL |
如果启用此选项(键设置为 1 或 LIGHT),驱动程序将根据小型数据采样而不是所有数据来推断元数据。 如果禁用此选项(键设置为 0 或 FULL),驱动程序将根据所有数据来推断元数据。 |
清除(0 或 FULL) |
否 |
PARSEMETHOD |
驱动程序用于分析查询的查询语言。 选择以下设置之一,或将键设置为括号中的值之一:
|
尝试采用“优选 SOQL,然后 SQL”分析查询(2 或 SOQL_FIRST) |
否 |
PROXYHOST |
要通过其进行连接的代理服务器的主机名或 IP 地址。 |
无 |
是,如果通过代理服务器连接。 |
PROXYPORT |
代理服务器用于侦听客户端连接的端口号。 |
无 |
是,如果通过代理服务器连接。 |
PROXYPWD |
用于访问代理服务器的密码。 |
无 |
是,如果连接到需要身份验证的代理服务器。 |
PROXYUID |
用于访问代理服务器的用户名。 |
无 |
是,如果连接到需要身份验证的代理服务器。 |
QueryAll |
如果启用此选项 (1),Salesforce 用户能够通过包含参数 isDeleted=true 来搜索已删除记录。 如果禁用此选项 (0),用户无法搜索已删除记录。 |
0 |
否 |
SANITIZECATALOGNAME |
如果启用此选项 (1),驱动程序修改目录名,方法为删除所有无效的 SQL-92 标识符字符并将所有空格替换为下划线。 如果禁用此选项 (0),驱动程序不修改目录名。 |
清除 (0) |
否 |
URL |
用于连接到 Salesforce 沙盒的 URL。 |
无 |
否 |
UseAnalyticAPI |
如果启用此选项 (1),驱动程序使用 Analytics API 执行报表。 如果禁用此选项 (0),驱动程序通过 URL 执行报表。 |
已选择 (1) |
否 |
USELABEL |
如果启用此选项 (1),驱动程序将 Salesforce 中的字段名称和标签分别用作返回数据中的名称和标签。 如果禁用此选项 (0),驱动程序将 Salesforce 中的字段名称同时用作返回数据中的名称和标签。 |
清除 (0) |
否 |
UseNumeric |
如果启用此选项 (1),驱动程序将数据返回为 SQL_NUMERIC 数据而非 SQL_DOUBLE 数据。 如果禁用此选项 (0),驱动程序将数据返回为 SQL_DOUBLE 数据。 |
清除 (0) |
否 |
UseWVarChar |
此选项指定数据类型映射到 SQL 的方式。 如果启用此选项 (1),驱动程序将数据返回为 SQL_WVARCHAR 数据而非 SQL_VARCHAR 数据。 如果禁用此选项 (1),驱动程序将数据返回为 SQL_VARCHAR 数据。 |
清除 (0) |
否 |