logo

MySQL إضافة/حذف العمود

العمود عبارة عن سلسلة من الخلايا في جدول قد تحتوي على نص وأرقام وصور. يخزن كل عمود قيمة واحدة لكل صف في الجدول. سنناقش في هذا القسم كيفية إضافة أو حذف أعمدة في جدول موجود.

كيف يمكننا إضافة عمود في جدول MySQL؟

ماي إس كيو إل يسمح ل تغيير الجدول، إضافة عمود أمر لإضافة عمود جديد إلى جدول موجود. فيما يلي بناء الجملة للقيام بذلك:

 ALTER TABLE table_name ADD COLUMN column_name column_definition [FIRST|AFTER existing_column]; 

في ما سبق،

  • أولا، نحن بحاجة إلى تحديد اسم الجدول.
  • بعد ذلك، بعد جملة ADD COLUMN، يتعين علينا تحديد اسم عمود جديد مع تعريفه.
  • وأخيرًا، نحتاج إلى تحديد الكلمة الأساسية FIRST أو AFTER. يتم استخدام الكلمة الأساسية الأولى لإضافة العمود باعتباره العمود الأول في الجدول. يتم استخدام الكلمة الأساسية AFTER لإضافة عمود جديد بعد العمود الموجود. إذا لم نقم بتوفير هذه الكلمات الأساسية، فإن MySQL تضيف العمود الجديد كالعمود الأخير في الجدول افتراضيًا.

في بعض الأحيان يكون مطلوبا إضافة أعمدة متعددة في الجدول الموجود. وبعد ذلك يمكننا استخدام بناء الجملة على النحو التالي:

 ALTER TABLE table_name ADD COLUMN column_name1 column_definition [FIRST|AFTER existing_column], ADD COLUMN column_name2 column_definition [FIRST|AFTER existing_column]; 

مثال على إضافة عمود MySQL

دعونا نفهم ذلك بمساعدة الأمثلة المختلفة. هنا سوف نقوم بإنشاء جدول بإسم 'امتحان' باستخدام العبارات التالية:

البناء في جافا
 CREATE TABLE Test ( Stude_id int AUTO_INCREMENT PRIMARY KEY, Name varchar(55) NOT NULL ); 

يبدو هيكل الجدول كما في الصورة أدناه:

MySQL إضافة/حذف العمود

بعد إنشاء الجدول، نريد إضافة عمود جديد باسم 'المدينة' إلى جدول الاختبار. وبما أننا لم نحدد موضع العمود الجديد بشكل صريح بعد اسم العمود، فسوف يقوم MySQL بإضافته باعتباره العمود الأخير.

 ALTER TABLE Test ADD COLUMN City VARCHAR(30) NOT NULL; 

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

 ALTER TABLE Test ADD COLUMN Phone_number VARCHAR(20) NOT NULL AFTER Name; 

في الإخراج أدناه، يمكننا أن نرى أنه تمت إضافة العمودين بنجاح في الموضع المحدد.

طرق قائمة المصفوفات
MySQL إضافة/حذف العمود

دعونا نضيف بعض البيانات إلى جدول الاختبار باستخدام إدراج بيان على النحو التالي:

 INSERT INTO Test( Name, Phone_number, City) VALUES ('Peter', '34556745362', 'California'), ('Mike', '983635674562', 'Texas'); 

سوف تبدو مثل هذا.

MySQL إضافة/حذف العمود

لنفترض أننا نريد إضافة أكثر من عمود واحد، (الفرع، البريد الإلكتروني) في جدول الاختبار في هذه الحالة، قم بتنفيذ العبارة كما يلي:

 ALTER TABLE Test ADD COLUMN Branch VARCHAR(30) DEFAULT NULL After Name, ADD COLUMN Email VARCHAR(20) DEFAULT NULL AFTER Phone_number; 

تجدر الإشارة إلى أنه تم تعيين العمودين 'الفرع' و'البريد الإلكتروني' إلى القيمة الافتراضية باطل . ومع ذلك، يحتوي جدول الاختبار بالفعل على بيانات، لذا سيستخدم MySQL القيم الخالية لتلك الأعمدة الجديدة.

يمكننا التحقق من السجل في جدول الاختبار على النحو التالي:

MySQL إضافة/حذف العمود

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

نوع الإرجاع في جافا
 ALTER TABLE Test ADD COLUMN City VARCHAR(30) NOT NULL; 

سوف نحصل على رسالة الخطأ التالية.

MySQL إضافة/حذف العمود

كيف يمكننا إعادة تسمية عمود في جدول MySQL؟

يسمح MySQL بـ تغيير عمود تغيير الجدول بيان لتغيير العمود القديم باسم جديد. فيما يلي بناء الجملة للقيام بذلك:

 ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name column_definition [FIRST|AFTER existing_column]; 

في ما سبق،

  • أولا، نحن بحاجة إلى تحديد اسم الجدول.
  • بعد ذلك، بعد جملة CHANGE COLUMN، يتعين علينا تحديد اسم العمود القديم واسم العمود الجديد مع تعريفه. يجب علينا تحديد تعريف العمود حتى أنه لن يتغير.
  • وأخيرًا، نحتاج إلى تحديد الكلمة الأساسية FIRST أو AFTER. إنه اختياري يتم تحديده عندما نحتاج إلى تغيير اسم العمود في الموضع المحدد.

مثال على عمود إعادة تسمية MySQL

يوضح هذا المثال كيف يمكننا تغيير اسم العمود في جدول MySQL:

 ALTER TABLE Test CHANGE COLUMN Phone_number Mobile_number varchar(20) NOT NULL; 

سيؤدي هذا البيان إلى تغيير اسم العمود رقم التليفون بالاسم الجديد رقم الهاتف المحمول في جدول الاختبار ويوضح الإخراج أدناه ذلك بشكل أكثر وضوحا.

MySQL إضافة/حذف العمود

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

في بعض الأحيان، نريد إزالة أعمدة مفردة أو متعددة من الجدول. يسمح MySQL بـ تغيير عمود إسقاط الجدول بيان لحذف العمود من الجدول. فيما يلي بناء الجملة للقيام بذلك:

 ALTER TABLE table_name DROP COLUMN column_name; 

في ما سبق،

  • أولا، نحن بحاجة إلى تحديد اسم الطاولة الذي نريد إزالة العمود منه.
  • التالي، بعد إسقاط العمود شرط، علينا تحديد اسم العمود الذي نريد حذفه من الجدول. تجدر الإشارة إلى أن الكلمة الأساسية COLUMN اختيارية في جملة DROP COLUMN.

إذا أردنا إزالة أعمدة متعددة من الجدول نفذ العبارات التالية:

مفتاح إدخال الكمبيوتر المحمول
 ALTER TABLE table_name DROP COLUMN column_1, DROP COLUMN column_2, ......; 

مثال على العمود المسقط في MySQL

يشرح هذا المثال كيف يمكننا حذف عمود من جدول MySQL. هنا سنأخذ طاولة 'امتحان' التي قمنا بإنشائها سابقًا وتبدو كما في الصورة أدناه:

كيفية فتح ملف مع جافا
MySQL إضافة/حذف العمود

لنفترض أننا نريد حذف اسم العمود 'فرع' من جدول الاختبار للقيام بذلك، قم بتنفيذ العبارة التالية:

 ALTER TABLE Test DROP COLUMN Branch; 

بعد التنفيذ الناجح يمكننا التحقق من النتيجة أدناه حيث يتم حذف عمود الفرع من الجدول:

MySQL إضافة/حذف العمود

في بعض الحالات، يلزم إزالة أعمدة متعددة من الجدول. للقيام بذلك، نحتاج إلى تنفيذ العبارة التالية:

 ALTER TABLE Test DROP COLUMN Mobile_number, DROP COLUMN Email; 

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

MySQL إضافة/حذف العمود

تذكر النقاط الرئيسية التالية قبل حذف عمود من الجدول:

تعمل MySQL مع قواعد البيانات العلائقية حيث يمكن أن يعتمد مخطط أحد الجداول على أعمدة جدول آخر. لذا، عندما نقوم بإزالة عمود من جدول واحد، فسيؤثر ذلك على جميع الجداول التابعة أيضًا. خذ بعين الاعتبار النقاط التالية أثناء إزالة العمود:

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