আমি একাধিক বিকাশ ডাটাবেস থেকে স্টেজিং / উত্পাদনে স্বয়ংক্রিয়ভাবে পরিবর্তনগুলি স্থানান্তরিত করার জন্য একটি স্ক্রিপ্ট তৈরি করছি। মূলত, এটি পরিবর্তন-স্ক্রিপ্টগুলির একগুচ্ছ লাগে এবং এগুলি প্রতিটি স্ক্রিপ্টকে IF whatever BEGIN ... END
বিবৃতিতে মোড়ানো একটি একক স্ক্রিপ্টে মিশে যায় ।
যাইহোক, কিছু স্ক্রিপ্টগুলির একটি GO
বিবৃতি প্রয়োজন যাতে উদাহরণস্বরূপ, এসকিউএল বিশ্লেষক এটি তৈরি করার পরে একটি নতুন কলাম সম্পর্কে জানে।
ALTER TABLE dbo.EMPLOYEE
ADD COLUMN EMP_IS_ADMIN BIT NOT NULL
GO -- Necessary, or next line will generate "Unknown column: EMP_IS_ADMIN"
UPDATE dbo.EMPLOYEE SET EMP_IS_ADMIN = whatever
যাইহোক, একবার আমি এটি একটি IF
ব্লকে মোড়ানো :
IF whatever
BEGIN
ALTER TABLE dbo.EMPLOYEE ADD COLUMN EMP_IS_ADMIN BIT NOT NULL
GO
UPDATE dbo.EMPLOYEE SET EMP_IS_ADMIN = whatever
END
এটি ব্যর্থ হয়েছে কারণ আমি BEGIN
কোনও মিল নেই প্রেরণ করছি END
। তবে, আমি যদি GO
এটি মুছে ফেলি তবে এটি অজানা কলাম সম্পর্কে আবার অভিযোগ করে।
একক IF
ব্লকের মধ্যে একই কলামটি তৈরি এবং আপডেট করার কোনও উপায় আছে কি ?