📞 02166056460

دستور alter table در sql

10 / 10
از 2 کاربر
بازگشت به لیست مقالات » | یکشنبه 3 آبان 1405 در ساعت 9 و 52 دقیقه | نظرات کاربران ( 2 )
آموزش پایگاه داده

دستور ALTER TABLE در SQL؛ راهنمای افزودن، حذف و تغییر ستون

آشنایی با ساختار دستور، مثال‌های کاربردی و نکات مهم پیش از تغییر جدول

دستور ALTER TABLE در SQL برای تغییر ساختار جدولی به کار می‌رود که از قبل در پایگاه داده ساخته شده است. با این دستور می‌توانید ستون جدید اضافه کنید، ستون موجود را حذف کنید یا نوع داده آن را تغییر دهید. در این راهنما، کاربردهای اصلی را همراه با مثال و نکات احتیاطی بررسی می‌کنیم تا تغییر جدول را با دقت بیشتری انجام دهید.

🎯

افزودن ستون

اضافه کردن یک فیلد جدید به جدول موجود با گزینه ADD

🔧

حذف ستون

برداشتن یک فیلد از ساختار جدول با گزینه DROP COLUMN

⚙️

تغییر نوع داده

به روزرسانی نوع داده ستون با توجه به سامانه پایگاه داده

۰۱

۵ نکته مهم درباره دستور ALTER TABLE در SQL

تغییر ساختار جدول می‌تواند روی داده‌های ذخیره شده و بخش‌های دیگر برنامه اثر بگذارد. پیش از اجرای دستور، هدف تغییر را مشخص کنید، سازگاری نوع داده را بسنجید و دستور را با گویش SQL مورد استفاده پایگاه داده تطبیق دهید. نکته‌های زیر کمک می‌کنند تغییرات را با خطای کمتر و برنامه‌ریزی دقیق‌تر انجام دهید.

۰۲

۱. ابتدا سامانه پایگاه داده را مشخص کنید

ساختار کلی دستور ALTER TABLE در سامانه‌های مختلف شبیه است، اما جزئیات نوشتن آن می‌تواند تفاوت داشته باشد. برای نمونه، تغییر نوع داده در SQL Server معمولاً با ALTER COLUMN نوشته می‌شود؛ در MySQL ممکن است از MODIFY COLUMN یا ساختارهای مرتبط استفاده شود. بنابراین، یک دستور را بدون بررسی مستندات همان سامانه اجرا نکنید.

فرض کنید جدولی به نام customers دارید و می‌خواهید نوع داده ستون phone را تغییر دهید. پیش از نوشتن کد، نسخه و سامانه پایگاه داده را بررسی کنید؛ سپس مطمئن شوید که دستور انتخابی در همان محیط پشتیبانی می‌شود. این کار از خطاهای نحوی و توقف عملیات جلوگیری می‌کند.

۰۳

۲. پیش از افزودن ستون، مقدارهای پیش فرض را بررسی کنید

افزودن ستون به جدول با گزینه ADD انجام می‌شود. اگر جدول خالی باشد، معمولاً انتخاب نوع داده ساده‌تر است؛ اما در جدول دارای رکورد باید مشخص کنید برای داده‌های قدیمی چه مقداری در ستون تازه قرار بگیرد. در بعضی سامانه‌ها، افزودن ستونی که مقدار پیش فرض ندارد و اجازه NULL هم نمی‌دهد، ممکن است با محدودیت روبه‌رو شود.

برای مثال، اگر به جدول سفارش‌ها ستون توضیحات اضافه می‌کنید، ممکن است مقدار خالی یا NULL برای سفارش‌های قدیمی مناسب باشد. اما اگر ستون وضعیت سفارش باید همیشه مقدار داشته باشد، مقدار پیش فرض را آگاهانه تعیین کنید و رفتار آن را در نرم‌افزار بررسی کنید.

۰۴

۳. حذف ستون را یک تغییر حساس در نظر بگیرید

گزینه DROP COLUMN ستون را از ساختار جدول حذف می‌کند. این عملیات ممکن است داده‌های همان ستون را نیز از بین ببرد و روی گزارش‌ها، نماها، رویه‌های ذخیره شده یا کد برنامه اثر بگذارد. به همین دلیل، حذف یک فیلد را فقط بر اساس استفاده نکردن ظاهری از آن انجام ندهید.

برای نمونه، پیش از حذف ستون قدیمی کدپستی، جست‌وجو کنید که آیا فرم‌های سایت یا گزارش‌های مدیریتی هنوز آن را می‌خوانند یا نه. اگر تغییر برای سامانه‌ای در حال استفاده است، ابتدا وابستگی‌ها را شناسایی کنید و زمان مناسبی برای اجرای تغییر در نظر بگیرید.

۰۵

۴. سازگاری داده‌ها را هنگام تغییر نوع بسنجید

تغییر نوع داده یک ستون زمانی موفق است که مقدارهای موجود با نوع جدید سازگار باشند. برای مثال، تبدیل یک ستون متنی به عدد ممکن است برای رکوردهایی که حروف یا نشانه‌های غیرعددی دارند با خطا روبه‌رو شود. همچنین تغییر طول رشته یا دقت عددی می‌تواند موجب کوتاه شدن یا از دست رفتن بخشی از داده شود.

اگر می‌خواهید نوع ستون price را تغییر دهید، ابتدا داده‌های فعلی و مقدارهای خارج از محدوده مورد نظر را بررسی کنید. در یک محیط آزمایشی، دستور را اجرا کنید و نتیجه را با داده‌های واقعی مقایسه کنید؛ سپس تغییر را به محیط اصلی منتقل کنید.

۰۶

۵. پشتیبان‌گیری و برنامه بازگشت داشته باشید

پیش از تغییر ساختار یک جدول مهم، از پایگاه داده یا دست کم از داده‌های در معرض تغییر نسخه پشتیبان تهیه کنید. در محیط عملیاتی، زمان اجرا، قفل شدن جدول و اثر احتمالی بر کاربران را هم در نظر بگیرید. حتی دستوری که از نظر نحوی درست است ممکن است به دلیل حجم جدول یا محدودیت‌های سامانه اجرای طولانی داشته باشد.

برای مثال، پیش از حذف یک ستون در سامانه فروش، نسخه پشتیبان را بررسی کنید و مطمئن شوید روش بازیابی در دسترس است. اگر تغییر به چند مرحله نیاز دارد، ترتیب اجرا را ثبت کنید تا در صورت بروز مشکل بتوانید وضعیت را تشخیص دهید و برای بازگشت تصمیم بگیرید.

ساختار و نمونه‌های دستور ALTER TABLE

۰۷

افزودن ستون به جدول

برای افزودن یک ستون به جدول موجود، نام جدول، نام ستون تازه و نوع داده آن را مشخص کنید. نمونه کلی زیر برای نشان دادن شکل دستور است؛ جزئیات آن را با سامانه پایگاه داده خود تطبیق دهید.

ALTER TABLE table_name
ADD column_name datatype;

در این نمونه، table_name نام جدول، column_name نام ستون جدید و datatype نوع داده مورد نظر است. برای نمونه، در SQL Server می‌توان یک ستون متنی را به شکل زیر به جدول افزود:

ALTER TABLE customers
ADD email VARCHAR(255);

پیش از اجرای نمونه، بررسی کنید که نام ستون از قبل در جدول وجود نداشته باشد و اندازه و نوع داده با نیاز برنامه سازگار باشد. اگر ستون باید یکتا یا اجباری باشد، محدودیت‌های لازم را نیز با توجه به سامانه و وضعیت داده‌های موجود تنظیم کنید.

۰۸

حذف ستون از جدول

برای حذف یک ستون، از DROP COLUMN استفاده می‌شود. پیش از اجرا، وابستگی‌های ستون و نیاز به نگهداری داده‌های آن را بررسی کنید؛ زیرا در صورت حذف، بازگرداندن اطلاعات ممکن است به نسخه پشتیبان نیاز داشته باشد.

ALTER TABLE table_name
DROP COLUMN column_name;

برای نمونه، در یک سامانه آزمایشی می‌توانید ستون موقت old_code را از جدول حذف کنید. نام جدول و ستون را دقیق وارد کنید و دستور را ابتدا در محیط غیرعملیاتی بسنجید. پشتیبانی از این شکل دستور و بعضی محدودیت‌های آن ممکن است بر اساس سامانه پایگاه داده متفاوت باشد.

۰۹

تغییر نوع داده ستون

در SQL Server، برای تغییر نوع داده ستون معمولاً از ALTER COLUMN استفاده می‌شود. نمونه زیر شکل کلی دستور را نشان می‌دهد:

ALTER TABLE table_name
ALTER COLUMN column_name datatype;

برای مثال، اگر قرار است نوع ستون phone از یک نوع متنی کوتاه به نوعی با ظرفیت بیشتر تغییر کند، ابتدا داده‌ها و محدودیت‌های وابسته را بررسی کنید. نوع و طول مقصد را با دقت مشخص کنید تا مقدارهای فعلی بدون ناخواسته کوتاه شدن حفظ شوند.

در سامانه‌های دیگر، دستور تغییر نوع ممکن است شکل متفاوتی داشته باشد. به همین دلیل، عبارت بالا را نسخه‌ای همگانی برای همه پایگاه‌های داده تلقی نکنید و راهنمای همان سامانه را در نظر بگیرید.

مطالعه بیشتر

درباره دستور ALTER بیشتر بدانید

برای مرور کاربرد دستور و آشنایی با توضیحات تکمیلی، مقاله مرتبط را ببینید.

مشاهده مقاله دستور Alter ←

نکته‌های اجرایی و خطاهای رایج

۱۰

نام جدول و ستون را دقیق وارد کنید

اشتباه در نام جدول یا ستون می‌تواند باعث شکست دستور یا تغییر جدول نادرست شود. نام‌ها را با ساختار واقعی پایگاه داده تطبیق دهید و اگر سامانه از چند schema پشتیبانی می‌کند، محل دقیق جدول را نیز مشخص کنید. در پروژه‌های گروهی، نام‌گذاری را با استاندارد همان پروژه هماهنگ نگه دارید.

همچنین از اجرای دستور روی پایگاه داده اشتباه جلوگیری کنید. پیش از تغییر، اتصال فعال و محیط مورد استفاده را کنترل کنید؛ به ویژه اگر محیط آزمایشی و عملیاتی نام‌های مشابه دارند.

۱۱

محدودیت‌ها و وابستگی‌ها را نادیده نگیرید

ستون ممکن است در کلیدها، ایندکس‌ها، نماها، محدودیت‌ها یا رویه‌های ذخیره شده استفاده شده باشد. وجود چنین وابستگی‌هایی می‌تواند مانع تغییر شود یا نیاز به اصلاح بخش‌های دیگر ایجاد کند. پیش از اجرا، پیام‌های خطا و ساختار وابسته به ستون را بررسی کنید.

برای مثال، اگر ستونی بخشی از یک کلید خارجی باشد، حذف یا تغییر آن ممکن است به رسیدگی جداگانه نیاز داشته باشد. بهتر است اصلاح وابستگی‌ها و تغییر جدول به صورت مرحله‌ای و مستند انجام شود.

💾

نسخه پشتیبان

پیش از تغییرهای حساس، امکان بازیابی داده‌ها را بررسی کنید.

🔍

بررسی وابستگی‌ها

کاربرد ستون را در گزارش‌ها، کد و محدودیت‌های جدول پیدا کنید.

✅

آزمایش دستور

تغییر را پیش از محیط اصلی در محیط آزمایشی اجرا کنید.

تفاوت دستورها در سامانه‌های مختلف

۱۲

یک مفهوم، چند شکل نوشتاری

هدف اصلی دستور ALTER TABLE در پایگاه‌های داده، تغییر تعریف یک جدول است؛ با این حال، شکل دقیق دستور و امکاناتی که پشتیبانی می‌شوند به سامانه وابسته‌اند. برای نمونه، افزودن ستون ممکن است در چند سامانه مشابه باشد، اما تغییر نوع داده یا مدیریت مقدار پیش فرض می‌تواند تفاوت داشته باشد.

اگر یک برنامه را میان چند پایگاه داده جابه‌جا می‌کنید، دستورهای تغییر ساختار را جداگانه آزمایش کنید. به مستندات رسمی سامانه، نسخه پایگاه داده و پیام خطا توجه کنید و از فرض کردن سازگاری کامل میان گویش‌های SQL بپرهیزید.

هدف تغییر عبارت رایج نکته مهم
افزودن ستون ADD نوع داده و مقدار پیش فرض را بررسی کنید.
حذف ستون DROP COLUMN وابستگی‌ها و نیاز به نگهداری داده را بسنجید.
تغییر نوع در SQL Server ALTER COLUMN سازگاری داده‌های موجود را کنترل کنید.
تغییر نوع در سامانه‌های دیگر وابسته به سامانه مستندات همان پایگاه داده را بررسی کنید.
مزایای ALTER TABLE

تغییر ساختار با برنامه

مدیریت دقیق‌تر جدول‌های پایگاه داده
۰۱
انعطاف

افزودن فیلد

گسترش جدول بدون ساخت دوباره آن

۰۲
سازماندهی

حذف ستون

پاکسازی فیلدهای غیرضروری با بررسی وابستگی‌ها

۰۳
سازگاری

تغییر نوع داده

هماهنگ کردن ساختار ستون با نیاز جدید

۰۴
مدیریت

اجرای مستقیم

اعمال تغییر ساختاری با دستور SQL

۰۵
توسعه

پشتیبانی از تغییرات

سازگار کردن جدول با نیازهای تازه برنامه

۱۳

نتیجه‌گیری

دستور ALTER TABLE در SQL راهی برای افزودن، حذف یا تغییر ستون‌های یک جدول موجود است. برای استفاده درست از آن، سامانه پایگاه داده را بشناسید، نوع داده و وابستگی‌ها را بررسی کنید و پیش از تغییرهای حساس نسخه پشتیبان داشته باشید. اجرای آزمایشی دستور و مطالعه مستندات همان سامانه، احتمال بروز خطا و از دست رفتن داده را کمتر می‌کند.

اگر در کنار توسعه پایگاه داده به خدمات طراحی سایت نیاز دارید، می‌توانید اطلاعات بیشتر را در وب‌سایت مربوطه ببینید. برای بررسی تغییر نام فیلد نیز مقاله تغییر نام فیلد در یک جدول با استفاده از دستور SQL را مطالعه کنید؛ تغییر نام فیلد معمولاً با روش‌ها و دستورهای وابسته به سامانه انجام می‌شود.

در برخی منابع قدیمی ممکن است گزینه‌های افزودن، حذف ستون و تغییر نوع داده با عنوان کلی تغییرات جدول معرفی شوند. توجه داشته باشید که حذف ستون با DROP COLUMN انجام می‌شود و برای تغییر نوع داده باید دستور سازگار با پایگاه داده را به کار ببرید.

پیش از تغییر جدول، دستور را بررسی کنید

نوع داده، وابستگی‌ها و نسخه پشتیبان را کنترل کنید تا تغییر ساختار جدول با دقت بیشتری انجام شود.

مرور دستور ALTER TABLE ←

سوالات متداول دستور ALTER TABLE در SQL

دستور ALTER TABLE در SQL چه کاربردی دارد؟

این دستور برای تغییر ساختار جدول موجود استفاده می‌شود؛ از جمله افزودن ستون، حذف ستون یا تغییر ویژگی‌های یک ستون. شکل دقیق دستور به سامانه پایگاه داده بستگی دارد.

چگونه یک ستون جدید به جدول اضافه کنیم؟

معمولاً از عبارت ALTER TABLE table_name ADD column_name datatype استفاده می‌شود. نام جدول، نام ستون و نوع داده را با ساختار واقعی پایگاه داده خود جایگزین کنید و مقدارهای پیش فرض یا امکان پذیرش NULL را نیز در نظر بگیرید.

آیا حذف ستون با ALTER TABLE قابل بازگشت است؟

حذف ستون ممکن است داده‌های آن را نیز از بین ببرد و بازگردانی آن معمولاً به نسخه پشتیبان یا سازوکار بازیابی نیاز دارد. پیش از اجرای DROP COLUMN وابستگی‌ها و نیاز به نگهداری داده را بررسی کنید.

آیا روش تغییر نوع داده در همه پایگاه‌های داده یکسان است؟

خیر. برای مثال، SQL Server از ساختار ALTER COLUMN استفاده می‌کند، اما در سامانه‌های دیگر ممکن است عبارت یا جزئیات متفاوت باشد. مستندات نسخه مورد استفاده را بررسی کنید.

پیش از اجرای دستور ALTER TABLE چه کاری انجام دهیم؟

از داده‌های مهم نسخه پشتیبان تهیه کنید، نوع داده و مقدارهای موجود را بررسی کنید، وابستگی‌های ستون را شناسایی کنید و دستور را ابتدا در محیط آزمایشی اجرا کنید. در محیط عملیاتی، زمان اجرا و اثر احتمالی بر کاربران را نیز بسنجید.

ارسال نظر و نظرات ثبت شده
مهدی :
1 0
در خط آخر که 3 پارامتر را معرفی کرده اید هر دو را به اشتباه DROP COLUMN نوشته اید که یکی از آنها باید ALTER COLUMN شود.
یلدا :
10 0
واقعا مطالبتون مفید و فصیح هستن ممنوووووون
سایر مقالات
آموزش View در sql آموزش view در sql آموزش پایگاه داده ساخت، استفاده و مدیریت جدول‌های مجازی در SQL ...
فیلد identity در Sql فیلد identity در SQL چیست و چگونه از آن استفاده کنیم؟ ⭐ فیلد identity در SQL فیلد identity د ...
محدودیت Unique در sql SQL UNIQUE Constraint برای جلوگیری از ثبت مقدارهای تکراری در ستون‌های جدول به کار می‌رود. ...
محدودیت NOT NULL در sql آموزش پایگاه داده محدودیت NOT NULL در SQL چیست؟ آموزش کاربردی و مثال با تعریف این محدودیت، ...
محدودیت Check در sql آموزش پایگاه داده محدودیت CHECK در SQL؛ راهنمای کامل تعریف و مدیریت اعتبارسنجی داده‌ه ...
محدودیت Default در اسکیوال آموزش SQL محدودیت SQL DEFAULT؛ مقدار پیش فرض در SQL نحوه تعریف، تغییر و حذف مقدار پیش فرض ...
محدودیت Foreign Key در sql آموزش SQL کلید خارجی در SQL چیست؟ راهنمای کامل Foreign Key تعریف، کاربرد، ساخت و حذف محدود ...
محدودیت Primary Key در sql آموزش پایگاه داده محدودیت Primary Key در SQL؛ تعریف و کاربرد کلید اصلی راهنمای تعریف، استف ...
ایجاد محدودیت برای فیلد ها (Constraints) آموزش پایگاه داده محدودیت های SQL چیست و چگونه از آنها استفاده کنیم؟ راهنمای کاربردی آشنای ...
دستور alter table در sql آموزش پایگاه داده دستور ALTER TABLE در SQL؛ راهنمای افزودن، حذف و تغییر ستون آشنایی با ساخ ...
تغییر نام فیلد در یک جدول با استفاده از دستور sql آموزش SQL Server تغییر نام ستون در SQL Server با دستور sp_rename نحوه تغییر نام فیلد، مثال ...
دستور Create Index در sql آموزش SQL دستور CREATE INDEX در SQL چیست؟ آموزش ساخت اندیس، انتخاب ستون مناسب و بهبود سرعت ...
دستور Drop در sql دستور DROP در SQL؛ آموزش حذف جدول، اندیس و پایگاه داده 💡آشنایی با حذف ساختارها در SQL دستور ...
دستور Create Table در sql دستور CREATE TABLE در SQL؛ راهنمای ایجاد جدول در پایگاه داده 💡آشنایی با ساخت جدول دستور CRE ...
دستور CREATE DATABASE در sql دستور CREATE DATABASE در SQL چیست؟ 💡آشنایی با ساخت پایگاه داده برای ایجاد یک پایگاه داده ...
دسته بندی
جستجو
⏳ در حال پردازش...
لطفا صبر کنید