在SnapLogic中,有没有一种方法可以参数化数据库连接信息,以便您可以创建一个可重用的管道,该管道可以为选择快照的帐户传递数据库连接信息?
发布于 2017-10-25 16:36:21
在管道属性中,添加一个名为"awsdb“的参数,并将其值作为"Account Name”。现在,在数据库访问快照中,使用上面创建的参数根据参数值动态加载连接信息。

发布于 2017-12-10 00:20:10
数据库连接信息不能作为参数传递(也不应该作为参数传递)。你必须为每个连接创建单独的帐户。
根据这里的this回答,您可以将帐户名作为管道参数传递,并将数据库读取快照配置为连接到它应该连接到的任何实例。
一种更好的方法是使用一个表达式库文件,该文件将包含帐户信息,并将模式名和表名作为管道参数传递。通过这种方式,您可以使用相同的管道从使用相同连接的不同模式中的不同表中提取数据。这可以通过将此管道拖放到需要它的任何位置来完成,或者使用pipeline execute从不同的管道调用它。您可以维护配置到不同帐户的多个这样的表达式库文件。
使用作为管道参数传递的模式名称和表名以及包含帐户信息的表达式库文件创建管道:

在快照的设置选项卡中配置架构名称和表名称:

从表达式库文件中获取账户信息:

本例中使用的表达式库文件config.expr:
{
"account": "../shared/TEST"
}它是有效的:

注意:正如您所看到的,我在我工作的项目空间的共享文件夹中创建了一个名为TEST的Generic Database Account。此帐户包含所有连接信息。
希望这能有所帮助:)
https://stackoverflow.com/questions/46749551
复制相似问题