从 Fabric 用户数据函数项连接到数据源(预览版)

Fabric 用户数据函数使用 Fabric 门户中的“管理连接”功能提供本机数据源连接。 此功能允许连接到 Fabric 数据源,而无需创建连接字符串或管理访问凭据。

在这篇文章中,你将学会如何:

  • 为用户数据函数项创建新连接。
  • 在函数代码中使用新连接。
  • 修改或删除数据连接。

Fabric 用户数据函数中支持的数据源连接

以下数据源当前支持用于 Fabric 用户数据函数:

为用户数据函数项创建新连接

添加的任何数据连接都与用户数据函数项相关联,并且可以在任何函数的代码中引用。 若要遵循本指南,需要现有的 Fabric 用户数据函数项和现有的 Fabric 数据源。

1.从 Functions 门户访问“管理连接”功能

在 Functions 门户编辑器的功能区中找到并选择“管理连接”。

Functions 门户编辑器的屏幕截图,其中突出显示了“管理连接”按钮。

打开的窗格包含你创建的任何数据连接。 选择“添加数据连接”以创建新连接。

侧窗格的屏幕截图,其中选择了“连接”选项卡且未列出任何连接。

2.从 OneLake 目录选择数据连接

选择“添加数据连接”时,OneLake 目录将打开,其中包含用户帐户有权访问的所有数据源的列表。 该列表经过筛选,仅包含受支持的数据源,其中一些数据源可能位于其他工作区中。

选择你的数据源,然后选择“连接”。

OneLake 数据目录的屏幕截图,其中包含数据源列表。

注释

如果找不到要查找的数据源,请确保你有权连接到数据源。 或者,请确保使用受支持的数据源,如本文开头所列。

创建后,所选数据源的新连接将显示在“连接”选项卡的侧窗格中。看到连接时,请记下为其生成的“别名字段”。 需要使用此别名从用户数据函数项中的任何函数引用连接。

“连接”侧窗格的屏幕截图,其中创建了新的数据源连接。

3.在函数代码中使用连接别名

回到门户编辑器后,需要向代码添加在 Manage Connections 选项卡中创建的连接的别名。 在这种情况下,我们将使用一个名为“Read data from a table in SQL Database(从 SQL 数据库中的表读取数据)”的代码示例。 可以通过单击“编辑”选项卡,然后单击“插入示例”按钮并导航到“SQL 数据库”来找到此示例。

“插入示例”数据目录的屏幕截图,其中包含数据源列表。

以下是插入的示例代码:

@udf.connection(argName="sqlDB",alias="<alias for sql database>")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
    # Replace with the query you want to run
    query = "SELECT * FROM (VALUES ('John Smith', 31), ('Kayla Jones', 33)) AS Employee(EmpName, DepID);"

    # Establish a connection to the SQL database
    connection = sqlDB.connect()
    cursor = connection.cursor()

    query.capitalize()

    # Execute the query
    cursor.execute(query)

    # Fetch all results
    results = []
    for row in cursor.fetchall():
        results.append(row)

    # Close the connection
    cursor.close()
    connection.close()
        
    return results

注释

虽然此示例连接到 SQL 数据库,但它不需要数据库中有架构或数据才能运行。

若要使用你创建的数据连接,请修改此示例中的以下行:@udf.connection(argName="sqlDB",alias="<alias for sql database>"),方法是将 alias 的值替换为从 Manage Connections 菜单获取的值。 以下代码显示具有值 ContosoSalesDat 的此示例:

@udf.connection(argName="sqlDB",alias="ContosoSalesDat")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
    [...]

修改代码后,使用工具栏中的“发布”按钮发布函数。 此操作可能需要几分钟的时间。

“发布”按钮的屏幕截图。

发布完成后,可以通过将鼠标悬停在函数资源管理器列表中函数的名称上,然后单击侧面板中的“运行”按钮来运行函数。 底部面板“输出”将显示运行函数的结果。

用于运行函数的侧面板的屏幕截图。

这样就可以从 Fabric 用户数据函数连接到数据源。

后续步骤