سؤال

لقد واجهنا مشكلة صغيرة في إجراء MySQL. لقد وضعنا بعض معالجات الاستثناء داخل الإجراء. لكننا نريد استرداد رمز الخطأ لأي خطأ يمكن أن يحدث داخل الإجراء. هل هناك أي طريقة للحصول على رمز الخطأ الدقيق باستخدام نوع من الوظائف (بنفس الطريقة ، نستخدم wsagetlasterror في واجهات برمجة تطبيقات المقبس)؟

على سبيل المثال ، لنفترض أن هناك استعلامًا محددًا داخل إجراء يشير إلى جدول غير متكافئ. في هذه الحالة ، سيتم إنشاء خطأ (يوجد "جدول" دونوت). سيتم نقل التحكم إلى معالجات الاستثناء ولكن دون أي معلومات معنى. يمكننا التعامل معه باستخدام رمز الخطأ الدقيق في هذه الحالة (1146). ولكن ماذا لو كان الخطأ شيئًا آخر ، لم نذكره في معالج الاستثناء؟ نريد الحصول على رمز الخطأ في هذه الحالة للتحقق لاحقًا. هناك استعلام أخطاء العرض ولكن كيفية استخدامه في إجراء للمعالجة؟ آمل أن يكون هذا أكثر وضوحًا.

لقد وجدت السؤال هنا أيضًا:http://www.eggheadcafe.com/software/aspnet/35923137/show-errors-question.aspxلكن لا أحد أجاب بعد.

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

المحلول

في هذا الوقت ، لا توجد طريقة يمكننا من خلالها فحص التيار رمز خطأ MySQL أو رمز SQLSTATE في إجراء المتجر. إنه SQL: ميزات 2003 لا يتم تنفيذ ذلك حاليًا على برنامج MySQL المخزن.

يجب عليك التحقق من هذا:http://www.docstoc.com/docs/687360/error handling-in-stored-procedure

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