【问题标题】:How to use pipeline parameters in DF Data Flow, Dataset source options如何在 DF 数据流、数据集源选项中使用管道参数
【发布时间】:2020-10-07 22:03:46
【问题描述】:

我已经在这里工作了一天,尝试了所有可能的变化并寻找其他解决方案。我有一个带有几个 DataBricks 笔记本的 DF 管道,最终结果被保存到 blob 存储中,但需要与 SQL 表连接才能更新一些值。我正在使用动态文件夹名称来提取可以正常工作的 blob 文件,但是当我为我的 SQL 查询尝试相同的操作时,它并没有失败,但它似乎没有选择任何记录。那么如何在数据流 SQL 查询中使用管道参数呢?

管道概览:

失败的来源:

我使用变量的查询:

最终结果:

非常感谢任何帮助!

【问题讨论】:

  • 您需要创建一个数据流参数,然后将管道参数传递给数据流参数,在SQL查询中使用数据流参数。

标签: azure-data-factory azure-databricks


【解决方案1】:

Azure SQL 数据库源数据集在数据流中不起作用。

您需要创建一个管道参数一个数据流参数,在查询中使用数据流参数。

例如:

创建数据流参数:

查询选项:

concat('select * from ', $Category)

管道参数:

从管道设置数据流参数值

【讨论】:

  • 嗨!并感谢您的回答,但按照您的指示,它失败并出现无效 PsuedoColumn 错误。您的数据集源查询选项页面看起来与我的不同,所以如果事情从那以后发生了变化。我还尝试使用我的屏幕说要使用的字符串插值方法。看起来像这样的“{$Category}”,但这会引发无效的语法错误。如果我选中该框以将参数用作表达式,它仍然会出错,但它知道我传入的参数是什么,因为它失败,此错误在“Vinegar”处缺少“=”。我的字符串是苹果醋。
  • @Voxum 我使用 Windows 数据工厂 V2 UI。 $Category 获取参数,'{$Category} 无效。请不要在参数中使用引号。
  • 如何在表达式生成器中指定这样的简单查询? SELECT * FROM myTable WHERE myColumn = 'Y'?我试过 'SELECT * FROM myTable WHERE myColumn = ' + toString('Y') 但是当我在数据预览中查看它时,它一直说它的“无效列 'Y'”。
猜你喜欢
  • 2019-10-21
  • 2021-05-08
  • 1970-01-01
  • 1970-01-01
  • 2021-02-15
  • 2016-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多