মাইক্রোসফ্ট দ্বারা একটি ALTER স্টেটমেন্টের কলামের অংশটি বাদ দেওয়ার জন্য নির্দিষ্ট সিনট্যাক্সটি এটি
DROP
{
[ CONSTRAINT ]
{
constraint_name
[ WITH
( <drop_clustered_constraint_option> [ ,...n ] )
]
} [ ,...n ]
| COLUMN
{
column_name
} [ ,...n ]
} [ ,...n ]
লক্ষ্য করুন যে [, ... n] কলামের নাম এবং পুরো ড্রপ ধারাটির শেষে উভয়ই প্রদর্শিত হবে। এর অর্থ হ'ল একাধিক কলাম মুছতে দুটি উপায় রয়েছে। আপনি হয় এটি করতে পারেন:
ALTER TABLE TableName
DROP COLUMN Column1, Column2, Column3
অথবা এটা
ALTER TABLE TableName
DROP
COLUMN Column1,
COLUMN Column2,
COLUMN Column3
এই দ্বিতীয় বাক্য গঠনটি কার্যকর যদি আপনি একটি সীমাবদ্ধতা হ্রাসের সাথে একটি কলামের ড্রপ একত্রিত করতে চান:
ALTER TBALE TableName
DROP
CONSTRAINT DF_TableName_Column1,
COLUMN Column1;
কলামগুলি ড্রপ করার সময় এসকিউএল সেভার বাদ দেওয়া কলামগুলির দ্বারা নেওয়া স্থানটি পুনরায় দাবি করে না। সারিগুলিতে ইনলাইন সঞ্চিত এমন ডেটা ধরণের জন্য (উদাহরণস্বরূপ) এটি পরিবর্তনীয় বিবৃতি দেওয়ার পরে যুক্ত হওয়া নতুন সারিগুলিতে স্থানও নিতে পারে। এটি পেতে আপনাকে টেবিলে একটি ক্লাস্টারড সূচক তৈরি করতে হবে বা যদি ইতিমধ্যে এটি ক্লাস্টারড সূচি থাকে তবে এটি পুনরায় তৈরি করতে হবে। সারণিটি সংশোধন করার পরে পুনরায় বিল্ডিং কমান্ড দিয়ে সূচকটি পুনর্নির্মাণ করা যেতে পারে। তবে সতর্কতা অবলম্বন করুন এটি খুব বড় টেবিলগুলিতে ধীর হতে পারে। উদাহরণ স্বরূপ:
ALTER TABLE Test
REBUILD;