لتعديل الجداول في قاعدة البيانات بأستخدام لغة SQL سوف نستخدم الايعاز ALTER TABLE وهو من ايعازات Data Definition Language او ما يعرف اختصارا ب DDL
ALTER TABLE table_name
وهناك عدة استخدامات لهذا الايعاز مثلا يمكن استخدام لاضافة عمود جديد او لحذف عمود من الجدول او لتغيير عمود موجود مثلا نغيير نوع البيانات او طول البيانات وكذلك يمكن استخدامه لحذف المحددات (Constraints).
ملاحظة
- يجب ان نكون حذرين جدا عند تعديل الجداول باستخدام ايعاز ALTER TABLE لان هذا الايعاز سوف يغير تركيب الجدول وفي بعض الاحيان سوف يغير نوع البيانات الخاصة بالاعمدة وهذا قد يؤثر على البيانات المخزنة حالية في الجدول. لذلك يجب اخذ الاحتياطات اللازمة مثلا اذا كان الجدول يحتوي على معلومات حساسة قد تحتاج اليها لاحقا يمكن حفظ نسخة من هذا الجدول ولكن بأسم ثاني بأستخدام عبارة SELECT INTO (كماشرحنا ذلك في الدرس السابق) او الاحتفاظ بنسخة من ملفلت النسخ الاحتياطي لقاعدة البيانات (Backup Files) وبتالي نستطيع استرجاع المعلومات من النسخ الاحتياطي.
الايعاز ALTER TABLE - ADD Column
يستخدم هذا الايعاز لاضافة حقول جديدة الى جدول موجود مسبقا. كما ذكرنا في المواضيع السابقة يجب الاهتمام بعملية تصميم الجداول حتى لانضطر الى تغيير جدول بعد ادخال البيانات ولكن في بعض الحالات سوف نضطر الى تغيير الجدول عندما تتغير المتطلبات. مثلا جدول الزبائن الذي كوناه في الدروس السابقة يمكن نضيف اليه حقلين جديدين حقل البلد وحقل المدينة يمكن تنفيذ الايعاز التالي
ALTER TABLE CUSTOMER ADD CUTSOMER_CITY VARCHAR (100), CUTSOMER_COUNTRY VARCHAR (100)
ALTER TABLE CUSTOMER ADD CUTSOMER_CITY VARCHAR (100) ALTER TABLE CUSTOMER ADD CUTSOMER_COUNTRY VARCHAR (100)
الايعاز ALTER TABLE - DROP COLUMN
اذا انتفت الحاجة لأحد حقول الجدول واردنا ازالته من الجدول يمكن استخدام الايعاز التالي ,لكن تذكر ان تأخذ الاحتياطات اللازمة لانه بعد تنفيذ هذا الايعاز سوف يقوم SQL Server بأزالة هذا الحقل والبيانات المخزنة فيه لذا يجب اخذ النسخ الاحتياطي اما للجدول بشكل منفصل او لكامل قاعدة البيانات. في المثال التالي سوف نحذف حقل المدينة:
ALTER TABLE CUSTOMER DROP COLUMN CUTSOMER_CITY
الايعاز ALTER TABLE - ALTER COLUMN
اذا اردنا تغيير نوع البيانات في احد الحقول او تعديل نوع البيانات يمكن استخدام الايعاز ALTER TABLE - ALTER COLUMN وهنا ايضا يجب ان نكون حذرين لان تغيير نوع البيانات سوف يكون له الاثر الكبير على البيانات الموجودة في الجدول مسبقا لذا يجب التخطيط لذلك مسبقا واخذ اخذ النسخ الاحتياطي اما للجدول بشكل منفصل او لكامل قاعدة البيانات. في هذا المثال سوف نعمل على زيادة طول حقل المدينة (CUSTOMER CITY) من VARCHAR 100 الى VARCHAR 200
ALTER TABLE CUSTOMER ALTER COLUMN CUTSOMER_CITY VARCHAR (200)
ليست هناك تعليقات:
إرسال تعليق