هذه المشكلة تثبت أنها صعبة (ومزعجة للغاية).
في SQL Server Management Studio 2008 ، حتى قبل أيام قليلة كان جهاز IntelliSense يعمل بشكل رائع. ثم توقف فجأة. الرمز كما تم تمكينه في قائمة شريط الأدوات ، وضمن أدوات -> خيارات -> محرر النصوص -> T-SQL -> التحسس الذكي تقول أنه ممكّن هناك.
لقد حاولت تحديث ذاكرة التخزين المؤقت IntelliSense باستخدام Ctrl-Shft-R ولكن هذا لا يعمل أيضًا.
هل من أفكار عما حدث لـ IntelliSense وما الذي يجب علي فعله لاستعادته؟
إذا قمت بترقية VisualStudio مؤخرًا ، فراجع هذا الرابط لإصلاحه:
قد تتوقف ميزة التحسس الذكي في SSMS 2008 R2 عن العمل بعد تثبيت Visual Studio 2010 SP1
أو يمكنك تنزيل الإصلاح مباشرة من هنا:
هناك عدد من الاحتمالات حيث لا يعمل IntelliSense:
هناك حالات تصبح فيها ذاكرة التخزين المؤقت المحلية المستخدمة من قبل IntelliSense قديمة. تحديث ذاكرة التخزين المؤقت سهل ولكنه ليس واضحًا بالضرورة.
هناك طريقتان لتحديث ذاكرة التخزين المؤقت:
إذا كان IntelliSense لا يزال لا يعمل ، فتأكد من تمكين IntelliSense. للتحقق من ذلك من نافذة محرر استعلام T-SQL لقاعدة البيانات الحالية:
تحقق أيضًا من عدم تشغيل محرر T-SQL في وضع SQLCMD. للتأكد:
لقد واجهت هذه المشكلة ، لذلك اتبعت نصيحة Ritesh D وذهبت إلى أدوات -> خيارات -> محرر نص -> Transact-SQL -> عام . راجعت IntelliSense ، ووجدت أنه تم تمكينه بالفعل.
ومع ذلك ، وجدت أنه لم يتم التحقق من "أعضاء القائمة التلقائية" و "معلومات المعلمة". لذا راجعتهم. هذا حل مشكلتي.
هاتان الميزتان هما ما أعتقد أنه "مخادع" و مايكروسوفت لا تعارض :
IntelliSense هو المصطلح العام لعدد من الميزات: قائمة الأعضاء ومعلومات المعلمات ومعلومات سريعة والكلمة الكاملة. تساعدك هذه الميزات على معرفة المزيد حول الرمز الذي تستخدمه ، وتتبع المعلمات التي تكتبها ، وإضافة مكالمات إلى الخصائص والأساليب بضربات مفاتيح فقط.
يُرجى التحقق من تعيين الحد الأقصى لحجم النص البرمجي على "غير محدود" ضمن خيارات خيار القائمة أدوات -> خيارات -> محرر النصوص -> Transact-SQL -> عام -> التحسس الذكي. فعلت هذا وبدأت التحسس العمل
عند استخدام قاعدة بيانات بعيدة مع اتصال نقل منخفض (على سبيل المثال ، اتصلت من أوروبا بخادم مكتب آسيا البعيدة) وعندما لا يكون هيكل قاعدة البيانات صغيرًا (على سبيل المثال ، العديد من الجداول) ، يستغرق SSMS وقتًا أطول في إكمال جميع بيانات IntelliSense.
في حالتي ، كان علي الانتظار أكثر من دقيقة واحدة للوصول إلى IntelliSense (اتصال بطيء و db مع حوالي 1000 جدول). (لا تعرض SSMS أي مؤشر تقدم أو أي معلومات تتعلق بعملية تحميل التحسس الذكي)
لقد لاحظت هذه المشكلة عندما ألغيت بعض الأذونات للمستخدم العام ، كما اقترح Azure. ساعد هذا في حل مشكلتي:
use master
go
GRANT EXECUTE ON [xp_instance_regread] TO [public]
GRANT EXECUTE ON [xp_regread] TO [public]
في وضع عدم الاتصال قواعد البيانات يمكن أن تتسبب في توقف Intelisense عن العمل. يمكنك اختبارها عن طريق وضع أي قاعدة بيانات في الخادم المتصل لديك في وضع عدم الاتصال وإعادتها.
يمكنني تأكيد ذلك باعتباره خطأ SQL 2016