إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تشرح هذه المجموعة من المقالات كيفية العمل باستخدام روابط 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.
تثبيت الحزمة
لكي تتمكن من استخدام ملحق الربط هذا في تطبيقك، تأكد من أن ملف host.json في جذر مشروعك يحتوي على هذا extensionBundle المرجع:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
في هذا المثال، version ترشد قيمة [4.0.0, 5.0.0) مضيف الوظائف إلى استخدام إصدار حزمة على الأقل 4.0.0 ولكن أقل من 5.0.0، والذي يتضمن جميع الإصدارات المحتملة من 4.x. يحافظ هذا النص بشكل فعال على تطبيقك على أحدث إصدار ثانوي متوفر من مجموعة ملحقات v4.x.
عندما يكون ذلك ممكنا، يجب استخدام أحدث إصدار رئيسي لحزمة الملحقات والسماح لوقت التشغيل بالحفاظ تلقائيا على أحدث إصدار ثانوي. يمكنك عرض محتويات أحدث حزمة في صفحة إصدار حزم الملحقات. لمزيد من المعلومات، راجع حزم ملحقات Azure Functions.
إذا كان تطبيقك بحاجة إلى استخدام وظيفة المعاينة، فيجب عليك بدلا من ذلك الرجوع إلى أحدث إصدار من حزمة المعاينة. لمزيد من المعلومات، راجع العمل مع حزم ملحقات المعاينة.
يمكنك عرض وظيفة المعاينة في صفحة إصدار Azure Functions SQL Extensions.
إشعار
يتطلب كسر التغييرات بين إصدارات المعاينة لروابط Azure SQL لوظائف Azure أن تستخدم جميع الوظائف التي تستهدف نفس قاعدة البيانات نفس الإصدار من حزمة ملحق SQL.
حزم التحديث
أضف حزمة Azure Functions Java SQL Types إلى مشروع الوظائف الخاص بك مع تحديث الملف pom.xml في مشروعك، كما في هذا المثال:
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-sql</artifactId>
<version>2.1.0</version>
</dependency>
سلسلة اتصال SQL
تحتوي روابط Azure SQL لوظائف Azure على خاصية مطلوبة سلسلة الاتصال على جميع الروابط والمشغلات. تمرر هذه سلسلة الاتصال إلى مكتبة Microsoft.Data.SqlClient وتدعم سلسلة الاتصال كما هو محدد في وثائق SqlClient ConnectionString.
هام
للحصول على الأمان الأمثل، يجب استخدام معرف Microsoft Entra مع الهويات المدارة للاتصالات بين الوظائف وقاعدة بيانات Azure SQL. تجعل الهويات المدارة تطبيقك أكثر أمانا من خلال إزالة الأسرار من عمليات نشر التطبيق، مثل بيانات الاعتماد في سلسلة الاتصال وأسماء الخوادم والمنافذ المستخدمة. يمكنك معرفة كيفية استخدام الهويات المدارة في هذا البرنامج التعليمي، وتوصيل تطبيق دالة ب Azure SQL مع الهوية المدارة وروابط SQL.
تشمل الكلمات الأساسية البارزة ما يلي:
-
Authentication: يسمح للدالة بالاتصال ب Azure SQL باستخدام معرف Microsoft Entra والهويات المدارة. لمزيد من المعلومات، راجع توصيل تطبيق دالة ب Azure SQL باستخدام الهوية المدارة وروابط SQL. -
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. - استخدم الهويات المدارة بدلا من أسماء المستخدمين وكلمات المرور.
- ضع في اعتبارك استخدام قيمة مفتاح Azure لتخزين إعدادات التطبيق.
العينات
بالإضافة إلى عينات C# وJava وJavaScript وPowerShell وPython المتوفرة في مستودع GitHub لروابط Azure SQL، يتوفر المزيد في نماذج Azure:
- نموذج واجهة برمجة تطبيقات C# ToDo مع روابط Azure SQL
- استخدام روابط SQL في Azure Stream Analytics
- إرسال البيانات من Azure SQL باستخدام Python