سؤال

أنا أقوم ببعض العمل على قطعة فظيعة من البرمجيات التي صممها أفضل بنغالور.

إنها مكتوبة في الغالب بلغة ASP/VbScript الكلاسيكية، ولكن "تم نقلها" إلى ASP.NET، على الرغم من أن معظم التعليمات البرمجية هي نمط ASP الكلاسيكي في صفحات ASPX :(

أتلقى هذه الرسالة عندما يحاول الاتصال بقاعدة البيانات المحلية الخاصة بي:

أدت عملية OLE DB متعددة الخطوات إلى إنشاء أخطاء.تحقق من كل قيمة حالة OLE DB، إذا كانت متوفرة.لم يتم إنجاز أي عمل.

Line 38:    MasterConn = New ADODB.Connection()
Line 39:    MasterConn.connectiontimeout = 10000
Line 40:        MasterConn.Open(strDB)

هل لدى أي شخص فكرة عما يعنيه هذا الخطأ؟يتصل بجهازي المحلي (الذي يعمل بنظام SQLEXPRESS) باستخدام سلسلة الاتصال هذه:

PROVIDER=MSDASQL;DRIVER={SQL Server};Server=JONATHAN-PC\SQLEXPRESS\;DATABASE=NetTraining;Integrated Security=true

وهي سلسلة الاتصال التي كانت تستخدمها في البداية، وقد قمت للتو بإعادة تحديدها في قاعدة البيانات الخاصة بي.

تحديث:

كانت المشكلة تتعلق باستخدام "الأمان المتكامل" مع ADO.لقد قمت بالتغيير إلى استخدام حساب مستخدم وكان متصلاً بشكل جيد.

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

المحلول

لقد واجهت هذا منذ وقت طويل أثناء العمل في ASP.لقد وجدت مقالة قاعدة المعرفة هذه وساعدتني.آمل أن يحل مشكلتك.

http://support.microsoft.com/kb/269495

إذا لم ينجح هذا وتم التحقق من كل شيء، فمن المحتمل أن تكون سلسلة الاتصال الخاصة بك.سأحاول هذه الخطوات التالية:

يزيل:

DRIVER={SQL Server};

قم بتحرير الموفر إلى هذا:

Provider=SQLOLEDB;

نصائح أخرى

كملاحظة جانبية، Connectionstrings.com هو موقع رائع لذا لا يتعين عليك أن تتذكر كل تركيبات سلسلة الاتصال هذه.

لقد واجهت هذه المشكلة عند محاولتي الاتصال بقاعدة بيانات MySQL عبر Classic ASP الرائع.لم تحل الحلول المذكورة أعلاه المشكلة مباشرة، ولكنني قمت بحلها في النهاية عن طريق تحديث برنامج تشغيل ODBC (من الإصدار 3.51 القديم) إلى الإصدار الأحدث.تمكنت بعد ذلك من ترك سطر برنامج التشغيل (وعدم إضافة بت الموفر)، ولكن كان علي تحديث سلسلة الاتصال وفقًا لذلك:

Driver={MySQL ODBC 5.1 Driver};

هذا يعمل بشكل جيد.تشابي سعيد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top