يتم توزيع إصلاحات Microsoft SQL Server 2012 Service Pack 1 كملف واحد قابل للتنزيل. نظرا لأن الإصلاحات تراكمية، يحتوي كل إصدار جديد على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي تم تضمينها مع إصدار إصلاح حزمة الخدمة 1 SQL Server 2012 السابق.
الأعراض
عند تشغيل عبارة Transact-SQL في SQL Server 2012، تتلقى رسالة الخطأ التالية:
بناء جملة غير صحيح بالقرب من 'begi'.
تحدث هذه المشكلة عندما تكون الشروط التالية صحيحة:
-
تحتوي العبارة على شرط IF.
-
لا يحتوي شرط IF على عبارات BEGIN وEND.
-
يتبع شرط IF كتلة BEGIN TRY.
-
تتم إعادة التحويل البرمجي لكتلة IF عند تشغيل الاستعلام.
الحل
معلومات التحديث التراكمي
التحديث التراكمي 4 SQL Server 2012 SP1
تم إصدار إصلاح هذه المشكلة لأول مرة في التحديث التراكمي 4. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي هذه SQL Server 2012 SP1، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في قاعدة معارف Microsoft:
2833645 التحديث التراكمي 4 SQL Server 2012 SP1Note نظرا لأن الإصدارات تراكمية، يحتوي كل إصدار إصلاح جديد على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي تم تضمينها مع إصدار إصلاح SQL Server 2012 SP1 السابق. نوصيك بالتفكير في تطبيق أحدث إصدار إصلاح يحتوي على هذا الإصلاح العاجل. لمزيد من المعلومات، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في قاعدة معارف Microsoft:
2772858 إصدارات SQL Server 2012 التي تم إصدارها بعد إصدار حزمة الخدمة 1 SQL Server 2012
الحالة
أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".
مزيد من المعلومات
لإعادة إنتاج هذه المشكلة، قم بتشغيل عبارات Transact-SQL التالية في SQL Server 2012: DECLARE @i INTIF object_id('tempdb.. #temptable') ليس فارغا#TEMPTABLECREATE TABLE #temptable (id INT)INSERT INTO #temptable VALUES (1),(2),(3);IF year(getdate())=2012 SELECT @i=(SELECT COUNT(*) AS nr FROM #temptable);بدء TRYSELECT 'message'END TRYBEGIN CATCHSELECT ERROR_MESSAGE()END CATCH
الحل البديل
للتغلب على هذه المشكلة، أضف عبارات BEGIN وEND إلى شرط IF.
المراجع
لمزيد من المعلومات حول نموذج الخدمة المتزايدة SQL Server، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في قاعدة معارف Microsoft:
935897 يتوفر نموذج خدمة تزايدي من فريق SQL Server لتقديم الإصلاحات العاجلة للمشاكل التي تم الإبلاغ عنها لمزيد من المعلومات حول مخطط التسمية لتحديثات SQL Server، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في قاعدة معارف Microsoft:
822499 تسمية مخطط Microsoft SQL Server حزم تحديث البرامج لمزيد من المعلومات حول مصطلحات تحديث البرامج، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في قاعدة معارف Microsoft:
824684 وصف المصطلحات القياسية المستخدمة لوصف تحديثات برامج Microsoft