عندما تعمل في قاعدة بيانات SQL، قد يكون لديك خطأ مطبعي أو نسيت إضافة فاصلة منقوطة للإنهاء. يمكن أن يؤدي هذا إلى خطأ من محرك قاعدة البيانات الخاصة بك. في معظم الحالات، يتضمن تفسير الخطأ من محرك قاعدة البيانات الفعلي.
ومع ذلك، هناك حالات يتم فيها تحليل الخطأ بواسطة SQL IDE الخاص بك لتزويدك برسالة خطأ أكثر بساطة وبساطة. مثال على ذلك هو 'لم يتم إنهاء أمر SQL بشكل صحيح'. هذا للإشارة إلى وجود خطأ في استعلامك.
على الرغم من أن الخطأ 'لم يتم إنهاء أمر SQL بشكل صحيح' ليس جزءًا من رموز أو رسالة خطأ SQL القياسية، إلا أنه يمكن أن يساعدك في التعرف بسرعة على الخطأ في الاستعلام. في معظم الحالات، يتضمن ذلك خطأً في بناء الجملة في العبارة المحددة.
في هذا البرنامج التعليمي، سنستكشف بعض أسباب هذا الخطأ وما يجب البحث عنه عندما تصادف رسالة الخطأ هذه من محلل SQL الخاص بك.
أسباب هذا الخطأ
هناك أسباب مختلفة لماذا قد تواجه هذا الخطأ. ولكن نظرًا لأنها رسالة خطأ في بناء الجملة بشكل عام، فلا يمكننا استكشافها جميعًا. ومع ذلك، دعونا نلقي نظرة على بعض الأشياء الشائعة.
1. الأقواس المفقودة أو غير المتطابقة
في SQL، عندما تحتاج إلى استخدام الأقواس، يجب عليك التأكد من أن لديك زوج افتتاح وزوج إغلاق مناظر.
لذلك، إذا كان لديك زوج مفقود، فقد يؤدي ذلك إلى هذا الخطأ:
يختار * من الموظفين
أين ( مرتب > 50000 والقسم = 'الموارد البشرية'
في المثال الموضح، يوجد قوس افتتاحي قبل شرط 'الراتب > 50000'، ولكن لا يوجد قوس إغلاق لهذا الشرط.
قد يؤدي هذا القوس غير المتطابق إلى ظهور خطأ 'لم يتم إنهاء أمر SQL بشكل صحيح' لأن نظام قاعدة البيانات لا يمكنه تحديد المكان الذي يجب أن ينتهي فيه أمر SQL.
2. علامات الاقتباس المفقودة أو غير المتطابقة
يمكن أن تؤدي علامات الاقتباس المفقودة أو غير المتطابقة إلى حدوث هذا الخطأ. على سبيل المثال، إذا كنت تستخدم علامات الاقتباس المفردة أو المزدوجة، فيجب عليك التأكد من أن لديك زوج فتح وإغلاق.
مثال على النحو التالي:
يختار * من المنتجاتأين اسم_المنتج = 'القطعة.'
في هذه الحالة، لدينا علامة اقتباس مفردة ختامية مفقودة في اسم المنتج.
3. الاستخدام غير الصحيح للكلمات الأساسية SQL
في SQL، تحتاج معظم الكلمات الرئيسية إلى عمليات مقابلة. وهذا يعني أنها ليست قائمة بذاتها. على سبيل المثال، إذا كنت تستخدم الكلمات الأساسية SELECT وDELETE وUPDATE وINSERT وGROUP BY وORDER BY وغيرها من الكلمات الأساسية المشابهة، فيجب عليك تقديم ما يجب فعله بهذا البيان.
يمكن أن يشمل ذلك تحديد الصفوف، وحذف الجدول/الصفوف، وما إلى ذلك.
تأكد من التحقق من الاستعلام الذي تقوم بتشغيله والتأكد من قيامه بالعملية بعد ذلك.
4. الفاصلة المنقوطة مفقودة
كما تعلم، يجب عليك إنهاء أي عبارة SQL باستخدام فاصلة منقوطة. في بعض قواعد البيانات، يؤدي فقدان الفاصلة المنقوطة إلى حدوث خطأ.
5. الاستعلامات الفرعية أو التعبيرات الفرعية غير المكتملة
إذا كنت ترغب في استخدام الاستعلامات الفرعية أو التعبيرات الفرعية في عبارة SQL الخاصة بك، فتأكد من أنها كاملة ومتداخلة بشكل صحيح داخل الاستعلام الرئيسي.
أسباب أخرى
الأسباب السابقة هي بعض الأسباب الشائعة لهذا الخطأ. ومع ذلك، هناك آخرون ليسوا مشهورين.
وتشمل هذه:
- الاستخدام غير الصحيح لمشغلي SQL
- عبارات SQL المفقودة أو الإضافية
- أحرف خاصة لم يتم الهروب منها
خاتمة
لاستكشاف خطأ 'لم يتم إنهاء أمر SQL بشكل صحيح'، قم بمراجعة عبارة SQL الهدف بعناية وانتبه جيدًا إلى بناء الجملة وعلامات الترقيم واستخدام الكلمات الرئيسية. يمكن أن يساعدك هذا في تحديد السبب الحقيقي.