透過適用於 Visual Studio Code 的 SQL 繫結延伸模組建立 Azure 函數
適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
SQL 繫結的 Azure Functions 支援在預覽版可供輸入和輸出繫結使用,讓您更輕鬆連線到 Azure SQL 資料庫或從 SQL Server 資料庫連線到 Azure Functions 的連線。 Visual Studio Code (VS Code) 的 SQL 繫結延伸模組可協助使用 SQL 繫結開發 Azure Functions 的流程,並隨 VS Code 的 mssql 延伸模組擴充套件一起自動安裝。 本文說明如何使用適用於 Visual Studio Code的 SQL 繫結延伸模組,來建立具有 SQL 繫結的 Azure Functions。
注意
目前,SQL 繫結延伸模組僅支援 C# Azure Functions。 JavaScript 和 Python Azure Functions 支援 SQL 繫結,但目前 SQL 繫結延伸模組不支援。
從物件總管
若要在物件總管 (OE) 中從特定 Table
或 View
建立 Azure Function,請以滑鼠右鍵按一下 SQL Server 物件總管中連線伺服器的資料表或檢視,然後選取 Create Azure Function with SQL Binding.
資料表 OE 命令:
檢視 OE 命令:
如需從 SQL Server 物件總管建立具有 SQL 繫結 Azure 函數的進一步文件,請參閱這裡。
從命令選擇區
從命令選擇區執行 MS SQL: Create Azure Function with SQL Binding
命令,以建立具有 SQL 繫結的新函數。
如需從命令選擇區中建立具有 SQL 繫結 Azure 函數的進一步文件,請參閱這裡。
在現有的 Azure 函數中
在編輯器中開啟 C# Azure 函數,然後從命令選擇區執行 MS SQL: Add SQL Binding
命令,以將 SQL 繫結新增至現有的函數。
請參閱這裡的進一步文件。
具有 SQL 繫結之 Azure Functions 產生的程式碼
為具有 SQL 輸入繫結的 Azure 函數產生的程式碼:
using System;
using System.Collections.Generic;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Extensions.Logging;
namespace Company.Function
{
public static class dboEmployees
{
// Visit https://aka.ms/sqlbindingsinput to learn how to use this input binding
[FunctionName("dboEmployees")]
public static IActionResult Run(
[HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req,
[Sql("SELECT * FROM [dbo].[Employees]",
CommandType = System.Data.CommandType.Text,
ConnectionStringSetting = "SqlConnectionString")] IEnumerable<Object> result,
ILogger log)
{
log.LogInformation("C# HTTP trigger with SQL Input Binding function processed a request.");
return new OkObjectResult(result);
}
}
}
為具有 SQL 輸出繫結的 Azure 函數產生的程式碼:
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.Extensions.Logging;
namespace Company.Function
{
public static class dboEmployees
{
// Visit [https://aka.ms/sqlbindingsoutput] to learn how to use this output binding
[FunctionName("dboEmployees")]
public static CreatedResult Run(
[HttpTrigger(AuthorizationLevel.Function, "get", Route = "addtodoitem")] HttpRequest req,
[Sql("[dbo].[Test2]", ConnectionStringSetting = "NewSQLConnectionString")] out ToDoItem output,
ILogger log)
{
log.LogInformation("C# HTTP trigger with SQL Output Binding function processed a request.");
output = new ToDoItem
{
Id = "1",
Priority = 1,
Description = "Hello World"
};
return new CreatedResult($"/api/addtodoitem", output);
}
}
public class ToDoItem
{
public string Id { get; set; }
public int Priority { get; set; }
public string Description { get; set; }
}
}
下一步
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應