تخطي إلى المحتوى الرئيسي
الدعم
تسجيل الدخول باستخدام حساب Microsoft
تسجيل الدخول أو إنشاء حساب.
مرحباً،
تحديد استخدام حساب مختلف!
لديك حسابات متعددة
اختر الحساب الذي تريد تسجيل الدخول باستخدامه.

يتم توزيع الإصلاحات Microsoft SQL Server 2012 Service Pack 1 كأحد الملفات القابلة للتحميل. نظراً لأن الإصلاحات تراكمية، يتضمن كل إصدار جديد كافة الإصلاحات العاجلة وإصدار تصحيح كافة تصحيحات الأمان التي تم تضمينها مع السابق SQL Server 2012 Service Pack 1.

الأعراض

عند تشغيل عبارة SQL للعمليات في SQL Server 2012، تتلقى رسالة الخطأ التالية:

بناء جملة غير صحيح بالقرب "بيجي".


تحدث هذه المشكلة إذا تحققت الحالتين التاليتين:

  • ويتضمن البيان شرط IF .

  • لا يحتوي على شرط IF عبارات البدء و الانتهاء .

  • الشرط إذا كان متبوعاً بكتلة TRY ابدأ .

  • يتم التحويل البرمجي لكتلة IF عند تشغيل الاستعلام.


الحل

معلومات التحديث التراكمي

التحديث التراكمي 4 ل SQL Server 2012 SP1

تم إصدار الإصلاح الخاص بهذه المشكلة أولاً في 4 التحديث التراكمي. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي ل SQL Server 2012 SP1، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في "قاعدة المعارف ل Microsoft":

تحديث 2833645 المتراكم 4 ل SQL Server 2012 SP1ملاحظة: نظراً لأن البنيات تراكمية، يحتوي كل إصدار إصلاح جديد على كافة الإصلاحات العاجلة وإصدار تصحيح كافة تصحيحات الأمان التي تم تضمينها مع SP1 2012 ملقم SQL السابقة. نوصي بأن تنظر في تطبيق أحدث إصدار للإصلاح الذي يحتوي على هذا الإصلاح العاجل. لمزيد من المعلومات، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في "قاعدة المعارف ل Microsoft":

2772858 بناء SQL Server 2012 التي تم إصدارها بعد إصدار SQL Server 2012 Service Pack 1

الحالة

أقرت Microsoft أن هذه مشكلة في منتجات Microsoft المسردة في قسم "ينطبق على".

مزيد من المعلومات

لإعادة إنشاء هذه المشكلة، تشغيل عبارات SQL للعمليات التالية في SQL Server 2012:

DECLARE @i INT

IF object_id('tempdb..#temptable') IS NOT NULL
DROP TABLE #temptable

CREATE TABLE #temptable (id INT)
INSERT INTO #temptable VALUES (1),(2),(3);

IF year(getdate())=2012 SELECT @i=(SELECT COUNT(*) AS nr FROM #temptable);
BEGIN TRY
SELECT 'message'
END TRY

BEGIN CATCH
SELECT ERROR_MESSAGE()
END CATCH

الحل البديل

للتغلب على هذه المشكلة، إضافة العبارات البدء و الانتهاء للشرط IF .

المراجع

لمزيد من المعلومات حول "نموذج تقديم تزايدي" ل SQL Server، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في "قاعدة المعارف ل Microsoft":

935897 "نموذج تقديم تزايدي" يتوفر من فريق SQL Server لتسليم الإصلاحات العاجلة للمشاكل التي تم الإبلاغ عنهالمزيد من المعلومات حول مخطط التسمية لتحديثات SQL Server، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في "قاعدة المعارف ل Microsoft":

حزم تحديث مخطط تسمية 822499 لبرامج Microsoft SQL Serverلمزيد من المعلومات حول مصطلحات تحديث البرامج، انقر فوق رقم المقالة التالي للانتقال إلى المقالة في "قاعدة المعارف ل Microsoft":

824684 وصف للمصطلحات القياسية المستخدمة في وصف تحديثات برامج Microsoft

هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.

هل كانت المعلومات مفيدة؟

ما مدى رضاك عن جودة اللغة؟
ما الذي أثّر في تجربتك؟
بالضغط على "إرسال"، سيتم استخدام ملاحظاتك لتحسين منتجات Microsoft وخدماتها. سيتمكن مسؤول تكنولوجيا المعلومات لديك من جمع هذه البيانات. بيان الخصوصية.

نشكرك على ملاحظاتك!

×