التعديلات على جداول منشئة فعلا Alter Tables)
-
إنشئ الجدول التالى:
CREATE TABLE Table1 (col1 INTEGER,col2 CHAR(10));
-
لتعديل وتغير أسم الجدول
ALTER TABLE Table1 RENAME Table2;
-
لتغير نوع البياناتMODIFY وتعديل الأسم وإضافة قيود CHANGE
ALTER TABLE Table2
MODIFY col1 TINYINT NOT NULL,
CHANGE col2 col3 CHAR(20);
-
لإضافة حقل جديد لجدول موجود
ALTER TABLE Table2 ADD col4 TIMESTAMP;
-
أى حقل جديد معدل يضاف فى آخر الجدول ولتحديد وضعه فى
ترتيب الحقول يمكن إستخدام كلمة AFTER
| BEFORE كما يلي:
ALTER TABLE Table2 ADD col4 TIMESTAMPAFTER col3;
-
لإضافة قيود جديدة على حقول موجودة
ALTER TABLE Table2
ADD INDEX (col4),
ADD UNIQUE (col1);
-
حذف حقل موجود بالجدول
ALTER TABLE Table2 DROP COLUMN col3;
-
إضافة حقل بقيود جديدة و إضافة قيود على حقول موجودة
ALTER TABLE Table2
ADD col3 INT UNSIGNED NOT NULL AUTO_INCREMENT,
ADD PRIMARY KEY (col3);
-
لعرض جملة الإنشاء الخاصة بالجدول نكتب الأمر التالى
mysql> show create table table2\G;
*************************** 1. row
***************************
Table: table2
Create Table: CREATE TABLE `table2` (
`col1` tinyint(4) NOT NULL,
`col4` timestamp NOT NULL
DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`col3` int(10) unsigned NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`col3`),
UNIQUE KEY `col1` (`col1`),
KEY
`col4` (`col4`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.01 sec)
-
لإنشاء جدول جديد Table3 بنفس
مواصفات جدول Tabl2 نكتب
Create Table Table3
LIKE Table2;
-
ولإنشاء جدول جديد Table4 بنفس شكل
جدول Table2 وبنفس البيانات نكتب
Create Table Table4 AS
SELECT * FROM Table2;
كما يمكن تحديد حقول معينة فقط بدلا من * وبيانات محددة
بكلمة Where كما سنرى فيما بعد فى جملة SELECT.
-
لحذف جدول
DROP TABLE Table4;