نظرة عامة على روابط Azure SQL لوظائف Azure

تشرح هذه المجموعة من المقالات كيفية العمل باستخدام روابط Azure SQL في Azure Functions. تدعم Azure Functions روابط الإدخال وروابط الإخراج ومشغل دالة لمنتجات Azure SQL وSQL Server.

الإجراء نوع
تشغيل دالة عند الكشف عن تغيير على جدول SQL مشغل SQL
قراءة البيانات من قاعدة البيانات ربط الإدخال
حفظ البيانات في قاعدة بيانات ربط الإخراج

تثبيت الملحق

تعتمد حزمة NuGet الملحق التي تقوم بتثبيتها على وضع C# الذي تستخدمه في تطبيق الوظائف:

يتم تنفيذ الوظائف في عملية عامل C# معزولة. لمعرفة المزيد، راجع دليل تشغيل وظائف C# Azure في عملية عامل معزولة.

أضف الملحق إلى مشروعك عن طريق تثبيت حزمة NuGet.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql

لاستخدام إصدار معاينة من حزمة Microsoft.Azure.Functions.Worker.Extensions.Sql، أضف العلامة --prerelease إلى الأمر . يمكنك عرض وظيفة المعاينة في صفحة إصدار Azure Functions SQL Extensions.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql --prerelease

إشعار

يتطلب كسر التغييرات بين إصدارات المعاينة لروابط Azure SQL لوظائف Azure أن تستخدم جميع الوظائف التي تستهدف نفس قاعدة البيانات نفس الإصدار من حزمة ملحق SQL.

تثبيت الحزمة

ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.

يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json :

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

وقت تشغيل الوظائف

تثبيت الحزمة

ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.

يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json :

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

تثبيت الحزمة

ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.

يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json :

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

حزم التحديث

أضف مكتبة Java لروابط SQL إلى مشروع الوظائف الخاص بك مع تحديث للملف pom.xml في مشروع وظائف Java Azure كما هو ملاحظ في القصاصة البرمجية التالية:

<dependency>
    <groupId>com.microsoft.azure.functions</groupId>
    <artifactId>azure-functions-java-library-sql</artifactId>
    <version>2.1.0</version>
</dependency>

يمكنك استخدام حزمة ملحق المعاينة مع تحديث للملف pom.xml في مشروع وظائف Java Azure كما هو ملاحظ في القصاصة البرمجية التالية:

<dependency>
    <groupId>com.microsoft.azure.functions</groupId>
    <artifactId>azure-functions-java-library-sql</artifactId>
    <version>2.1.0-preview</version>
</dependency>

سلسلة اتصال SQL

تحتوي روابط Azure SQL لوظائف Azure على خاصية مطلوبة سلسلة الاتصال على جميع الروابط والمشغلات. تمرر هذه سلسلة الاتصال إلى مكتبة Microsoft.Data.SqlClient وتدعم سلسلة الاتصال كما هو محدد في وثائق SqlClient ConnectionString. تشمل الكلمات الأساسية البارزة ما يلي:

  • Authentication يسمح لوظيفة بالاتصال ب Azure SQL باستخدام معرف Microsoft Entra، بما في ذلك Active Directory Managed Identity
  • يسمح Command Timeout لوظيفة ما بالانتظار لفترة محددة من الوقت بالثواني قبل إنهاء استعلام ما (افتراضي 30 ثانية)
  • يسمح ConnectRetryCount لوظيفة ما بإجراء محاولات إعادة اتصال إضافية تلقائياً، خاصة تلك التي تنطبق على طبقة Azure SQL Database بلا خادم (افتراضي 1)
  • Pooling يسمح للدالة بإعادة استخدام الاتصالات بقاعدة البيانات، والتي يمكن أن تحسن الأداء (الافتراضي true). تتضمن Connection Lifetimeالإعدادات الإضافية لتجميع الاتصال و Max Pool Sizeو.Min Pool Size تعرف على المزيد حول تجميع الاتصال في وثائق ADO.NET

الاعتبارات

  • يدعم ربط Azure SQL الإصدار 4.x والإصدارات الأحدث من وقت تشغيل الوظائف.
  • يمكن العثور على التعليمة البرمجية المصدر لربط Azure SQL في مستودع GitHub هذا.
  • يتطلب هذا الربط الاتصال بـAzure SQL Database أو SQL Server.
  • روابط الإخراج مقابل الجداول التي تحتوي على أعمدة من أنواع البيانات NTEXT، وTEXT، أو IMAGE غير مدعومة وستفشل عمليات رفع البيانات. هذه الأنواع ستتم إزالتها في إصدار مستقبلي من SQL Server وهي غير متوافقة مع الوظيفة OPENJSON المستخدمة بواسطة ربط Azure Functions.

العينات

بالإضافة إلى عينات C# وJava وJavaScript وPowerShell وPython المتوفرة في مستودع GitHub لروابط Azure SQL، يتوفر المزيد في نماذج Azure:

الخطوات التالية