এসকিউএল সার্ভার ২০০৮-এ ড্রপ ডাটাবেসকে কীভাবে জোর করবেন


68

আমি একটি ডাটাবেস ড্রপ করার জন্য চাপ দেওয়ার চেষ্টা করছি, তবে ডাটাবেসটি ফেলে দেওয়ার পরে, যখন আমি ডাটাবেসটি পুনরায় তৈরি করার চেষ্টা করি তখন আমি ত্রুটিটি পেয়ে যাচ্ছি

সি তৈরি করতে পারে না: Files প্রোগ্রাম ফাইল ..... [ডাটাবেসন] .এমডিএফ কারণ এটি ইতিমধ্যে বিদ্যমান

এখানে ডাটাবেস ড্রপ জোর করতে আমার জিজ্ঞাসা

Use master;
ALTER database [databasename] set offline with ROLLBACK IMMEDIATE;
DROP database [databasename];

আমি বুঝতে পেরেছি, উপরের ক্যোয়ারীটি ডাটাবেসটি হারাচ্ছে, তবে এটি ফাইল .ldfএবং .mdfফাইলগুলি মুছে ফেলছে না । কিভাবে ডাটাবেস পুরোপুরি ড্রপ?

একটি সাধারণ ক্যোয়ারী

Drop database [databasename] ; //deletes the database completely, including the ldf and mdf's.

কীভাবে একটি ডাটাবেস ড্রপ করতে বাধ্য করবে, যা ফাইল .mdfএবং .ldfফাইলগুলিও মুছে দেয় ?

উত্তর:


116

এটি প্রত্যাশিত এবং দলিলযুক্ত আচরণ :

একটি ডাটাবেস ফেলে দেওয়া এসকিউএল সার্ভারের উদাহরণ থেকে ডাটাবেস মুছে ফেলে এবং ডাটাবেস দ্বারা ব্যবহৃত ফিজিক্যাল ডিস্ক ফাইলগুলি মুছে দেয়। এটি বাদ পড়লে ডাটাবেস বা এর যে কোনও একটি ফাইল অফলাইনে থাকলে ডিস্ক ফাইলগুলি মোছা হয় না। উইন্ডোজ এক্সপ্লোরার ব্যবহার করে এই ফাইলগুলি ম্যানুয়ালি মোছা যাবে। ফাইল সিস্টেম থেকে ফাইলগুলি মোছা না করে বর্তমান সার্ভার থেকে একটি ডাটাবেস সরাতে, sp_detach_db ব্যবহার করুন।

তাহলে আপনি কেন প্রথমে আপনার ডাটাবেসটিকে অফলাইনে নিচ্ছেন? এটিকে কেবল SINGLE_USERমোডে সেট করুন এবং তারপরে এটি এসকিউএল সার্ভার বুকস অনলাইনে নথি হিসাবে ফেলে দিন-

USE master;
ALTER DATABASE [databasename] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
DROP DATABASE [databasename] ;

দ্রষ্টব্য, উপরের নথিভুক্ত প্রক্রিয়ার অংশ হিসাবে ডাটাবেস ব্যাকআপগুলি মুছে ফেলা হবে না

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.