در MySQL، برای تغییر ساختار یک جدول از دستور ALTER TABLE
استفاده میشود.
این دستور امکان افزودن، حذف یا تغییر نام و نوع ستونها، تنظیم کلیدهای اصلی، تغییر مقدار AUTO_INCREMENT و موارد دیگر را فراهم میکند.
۱. افزودن ستون جدید به جدول
اگر بخواهید یک ستون جدید به جدول اضافه کنید، از دستور زیر استفاده میشود:
مثال: افزودن ستون age
به جدول users
ALTER TABLE users ADD COLUMN age INT;
🔹 ستون جدید age از نوع INT به جدول users
اضافه میشود.
🔹 این ستون در انتهای جدول قرار میگیرد.
افزودن ستون در مکان خاص
اگر بخواهید ستون را در موقعیت خاصی اضافه کنید، از AFTER column_name
یا FIRST
استفاده کنید.
🔹 افزودن ستون phone
بعد از email
:
ALTER TABLE users ADD COLUMN phone VARCHAR(15) AFTER email;
🔹 افزودن ستون gender
در ابتدای جدول:
ALTER TABLE users ADD COLUMN gender VARCHAR(10) FIRST;
۲. تغییر نوع داده و ویژگیهای ستون
اگر نیاز داشته باشید نوع داده یک ستون را تغییر دهید، از دستور MODIFY
یا CHANGE
استفاده میشود.
مثال: تغییر نوع داده ستون age
از INT
به TINYINT
ALTER TABLE users MODIFY COLUMN age TINYINT;
🔹 این دستور نوع داده ستون age
را به TINYINT تغییر میدهد.
تغییر نام و نوع داده ستون (با CHANGE
)
ALTER TABLE users CHANGE COLUMN phone mobile VARCHAR(20);
🔹 این دستور نام ستون phone
را به mobile
تغییر داده و نوع داده آن را به VARCHAR(20) تبدیل میکند.
۳. حذف ستون از جدول
اگر نیاز باشد یک ستون را حذف کنید، از DROP COLUMN
استفاده کنید.
مثال: حذف ستون gender
از جدول users
ALTER TABLE users DROP COLUMN gender;
🔹 ستون gender
از جدول حذف میشود.
🔺 نکته: پس از حذف، اطلاعات آن ستون قابل بازیابی نیست.
۴. تغییر نام جدول
اگر بخواهید نام یک جدول را تغییر دهید، از RENAME TO
استفاده کنید.
مثال: تغییر نام جدول users
به customers
ALTER TABLE users RENAME TO customers;
🔹 نام جدول users به customers تغییر میکند.
۵. تنظیم مقدار اولیه AUTO_INCREMENT
اگر بخواهید مقدار ID بعدی در AUTO_INCREMENT را تغییر دهید، از این دستور استفاده کنید:
مثال: تنظیم مقدار AUTO_INCREMENT روی ۱۰۰
ALTER TABLE users AUTO_INCREMENT = 100;
🔹 بعد از اجرای این دستور، اولین رکورد جدید مقدار ID=100 را دریافت خواهد کرد.
۶. مدیریت کلیدهای اصلی و خارجی
اضافه کردن کلید اصلی (PRIMARY KEY)
ALTER TABLE users ADD PRIMARY KEY (id);
🔹 این دستور ستون id
را به عنوان کلید اصلی تعریف میکند.
حذف کلید اصلی
ALTER TABLE users DROP PRIMARY KEY;
🔹 کلید اصلی جدول حذف میشود.
افزودن کلید خارجی (FOREIGN KEY)
ALTER TABLE orders ADD CONSTRAINT fk_user FOREIGN KEY (user_id) REFERENCES users(id);
🔹 این دستور ستون user_id
در جدول orders
را به ستون id
در جدول users
متصل میکند.
حذف کلید خارجی
ALTER TABLE orders DROP FOREIGN KEY fk_user;
🔹 کلید خارجی fk_user حذف میشود.
۷. حذف تمامی دادههای جدول بدون حذف ساختار (TRUNCATE)
اگر بخواهید تمامی دادههای یک جدول را حذف کنید ولی ساختار آن حفظ شود، از TRUNCATE TABLE
استفاده کنید.
مثال: حذف تمامی دادههای جدول users
TRUNCATE TABLE users;
🔹 این دستور تمام رکوردهای جدول را حذف میکند اما جدول باقی میماند.
۸. حذف کامل جدول (DROP TABLE)
برای حذف یک جدول بهطور کامل (همراه با دادهها و ساختار آن)، از DROP TABLE
استفاده کنید.
مثال: حذف جدول users
DROP TABLE users;
🔹 این دستور جدول users
را بهطور کامل از پایگاه داده حذف میکند.
نتیجهگیری
- برای ویرایش جدول در MySQL، از دستور
ALTER TABLE
استفاده میشود. - امکان افزودن، حذف، تغییر نام و نوع داده ستونها وجود دارد.
- میتوان نام جدول را تغییر داد و مقدار AUTO_INCREMENT را تنظیم کرد.
- امکان مدیریت کلیدهای اصلی و خارجی وجود دارد.
- TRUNCATE برای حذف تمام دادهها و DROP TABLE برای حذف کامل جدول استفاده میشود.
🔹 دستور ALTER TABLE
ابزار قدرتمندی برای مدیریت تغییرات در جداول MySQL است و باید با دقت از آن استفاده شود تا دادههای مهم از بین نروند.