"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنني إسقاط عمود بشكل مشروط في MySQL؟

كيف يمكنني إسقاط عمود بشكل مشروط في MySQL؟

تم النشر بتاريخ 2024-11-07
تصفح:905

How can I conditionally drop a column in MySQL?

إسقاط الأعمدة المشروط باستخدام MySQL ALTER

يوفر أمر ALTER في MySQL طريقة مباشرة لإسقاط الأعمدة من الجداول. ومع ذلك، فإن بناء الجملة التقليدي الخاص به (ALTER TABLE table_name DROP COLUMN column_name) يثير خطأ عندما لا يكون العمود المحدد موجودًا.

بالنسبة لإصدار MySQL 4.0.18، لا يوجد بناء جملة مضمن لإسقاط عمود بشكل مشروط. ستؤدي محاولة مثل هذه العملية حتماً إلى حدوث خطأ.

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

MariaDB Alternative

MariaDB، وهو فرع من MySQL، قدم حلاً مرغوبًا بدءًا من الإصدار 10.0.2. وهو يدعم بناء الجملة التالي:

ALTER TABLE table_name DROP [COLUMN] [IF EXISTS] column_name

لذلك، يمكنك إسقاط عمود بشكل مشروط في MariaDB باستخدام الأمر التالي:

ALTER TABLE my_table DROP IF EXISTS my_column;

ومع ذلك، من المهم ملاحظة أن الاعتماد على هذه الميزة غير القياسية عبر تفرعات MySQL المختلفة ليس أمرًا مستحسنًا.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3