এসকিউএল সার্ভারে ড্রপ থাকলে কীভাবে ব্যবহার করবেন?



সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন

এই নিবন্ধটি আলোচনা 'উপস্থিত থাকলে ড্রপ' এসকিউএল সার্ভার 2016 এবং পরবর্তী সংস্করণগুলিতে বিবৃতি উপলব্ধ। 'যদি বাইরে চলে যায়' এসকিউএল সার্ভার 2016 এবং এর পরবর্তী সংস্করণগুলিতে বিদ্যমান ডিআরপি বিবৃতিতে যুক্ত হওয়া সর্বশেষতম alচ্ছিক ধারাটি। মূলত, 'উপস্থিত থাকলে ড্রপ' যখন কোনও সত্তা তৈরি করা বা ফেলে দেওয়ার আগে কোনও সত্তা ডাটাবেসে থাকে কিনা তা পরীক্ষা করার জন্য প্রয়োজনীয় বিকল্পটি ব্যবহার করা হয়। এই ক্ষেত্রে, আমরা প্রথমে বিদ্যমান ডাটাবেস অবজেক্টটি ড্রপ করব এবং তারপরে প্রয়োজনে পরিবর্তন সহ এটি পুনরায় তৈরি করব।



সুতরাং, এটি শর্ত থাকলে লিখিতকরণের পুরানো উপায়কে বাধা দেয় এবং যদি শর্তের ভিতরে কোনও শর্ত বিবরণ লেখার জন্য অবজেক্টের উপস্থিতি এটি বাদ দেওয়ার জন্য পরীক্ষা করে। যদি এটি না ঘটে তবে ব্যাচের পরবর্তী বিবৃতি কার্যকর করা অব্যাহত থাকবে। তবে আমরা যদি এমন কোনও অবজেক্টকে ফেলে দেওয়ার চেষ্টা করি যা অস্তিত্বহীন থাকে তবে এটি নীচের চিত্রের মতো ত্রুটি বার্তা উত্থাপন করবে।



নিম্নলিখিত কোয়েরি কার্যকর করুন।



ড্রপ টেবিল dbo.company

আউটপুট যেমন হবে।

অস্তিত্ব নেই এমন ডাটাবেস অবজেক্টটি ফেলে দেওয়ার সময় ত্রুটি দেখা দেয়

বাক্য গঠন

'অবজেক্ট_প্রকার [যদি উপস্থিত থাকে] অবজেক্ট_নাম' ড্রপ করুন

যুক্তি

OBJECT_TYPE:



ডাটাবেস, ট্রিগার, সমাবেশ, সিক্যুয়েন্স, সূচক, টেবিল, পদ্ধতি দেখুন, ফাংশন ইত্যাদি থেকে যে কোনও অবজেক্ট টাইপ হতে পারে

যদি উপস্থিত থাকে:

এটি একটি alচ্ছিক ধারা এবং এটি ডিআআরপি বিবৃতিতে উল্লেখ করা থাকলে এটি বস্তুর অস্তিত্ব পরীক্ষা করে দেখবে, যদি এটি উপস্থিত থাকে তবে এটি নেমে আসবে, অন্যথায় এটি কোনও ত্রুটি না করেই ব্লকের পরবর্তী বিবৃতি কার্যকর করতে থাকবে।

এসকিউএল সার্ভার ২০১ 2016 সালে নতুন পদ্ধতি 'ড্রপ যদি উপস্থিত থাকে' প্রবর্তনের সাথে সাথে বিকাশকারীরা সংক্ষিপ্ত কোড লিখতে পারেন।

প্রথমে “অ্যাপলস” নামের একটি ডাটাবেস তৈরি করুন।

একটি ডাটাবেস তৈরি করা হচ্ছে

এখন, আমরা নিম্নলিখিত কোডটি কার্যকর করে ড্রপ করার জন্য একটি টেবিল তৈরি করব।

[অ্যাপলিউস] টেবিল টেম্প ক্রিয়েট করুন (আইডি আইএনটি, নাম বর্ণচালক (100%); যাওয়া

ফলাফলটি নিম্নরূপ হবে।

টেবিল তৈরি

আরও, নিম্নলিখিত কোড ব্যবহার করে বাদ দেওয়ার জন্য একটি স্টোর প্রক্রিয়া তৈরি করুন।

ব্যবহার করুন [অ্যাপলিকেশনস] এন্টিসি_নুল সেট করুন যান সেট নির্ধারণ করুন যান নির্ধারণ করুন প্রক্রিয়া তৈরি করুন [ডিবিও] [[sp_temp] আরম্ভ করুন নিবন্ধ হিসাবে; Dbo.temp থেকে * নির্বাচন করুন; শেষ

আউটপুট নীচের মত হবে।

স্টোর প্রক্রিয়া তৈরি

পুরানো পদ্ধতি: এসকিউএল সার্ভারের আগে ড্রপ ব্যবহার করে যদি ডাটাবেস অবজেক্টে প্রস্থান হয়

এসকিউএল সার্ভার ২০১ before এর আগে যদি ড্রপ পদ্ধতি ব্যবহার করে তবে লম্বা আইএফ স্টেটমেন্ট র‌্যাপারস কোড লিখতে হবে।

উপস্থিত থাকলে টেবিলটি ফেলে দিন

সারণি বাদ দেওয়ার পূর্ব পদ্ধতিটি নিম্নরূপ।

যদি আমরা এসকিউএল সার্ভার 2015 ব্যবহার করি বা তার চেয়েও আগের আমাদের নীচের কোডের গুচ্ছটি কার্যকর করতে হবে।

যদি (OBJECT_ID ('dbo.temp') নাল নয়) ড্রপ টেবিল অস্থায়ী

ফলাফলটি নিম্নরূপ হবে।

টেবিল বাদ দিচ্ছে

এখন এর সিনট্যাক্সটি বেশ বিভ্রান্তিকর তাই যদি আপনি এটি পছন্দ না করেন এবং আপনি এসকিউএল সার্ভার 2016 ব্যবহার করছেন বা তারপরে আপনি বড় মোড়কের পরিবর্তে সহজ ড্রপের পক্ষে যেতে পারেন।

উপস্থিত থাকলে ড্রপ স্টোর পদ্ধতি:

পদ্ধতিটি ড্রপ করার জন্য, আমাদের স্টোর পদ্ধতিটি রয়েছে কিনা তা পরীক্ষা করার জন্য একটি শর্তসাপেক্ষ বিবৃতি লিখতে হবে এবং ড্রপ বিবৃতিটি লিখতে হবে। অন্যথায়, সঞ্চিত প্রক্রিয়াটি বিদ্যমান না থাকলে এটি ত্রুটি বাড়িয়ে তুলবে।

এসকিউএল সার্ভার 2016 এর চেয়ে কম সংস্করণগুলিতে পদ্ধতিটি ফেলে দেওয়ার জন্য নিম্নলিখিত বিবৃতিগুলি কার্যকর করুন।

যদি উপস্থিত না থাকে (1 টি সিস্টেম থেকে প্রযোজ্য। প্রক্রিয়া যেখানে নাম = 'এসপি_পেন্দ্র') ড্রপ প্রক্রিয়া dbo.sp_temp

আউটপুট যেমন হবে।

পুরানো পদ্ধতিটি ব্যবহার করে ড্রপ পদ্ধতি যদি র‍্যাপার কোড থাকে

উপস্থিত থাকলে ডাটাবেসটি ফেলে দিন:

আপনি যদি এসকিউএল সার্ভারের পূর্ববর্তী সংস্করণ ব্যবহার করে থাকেন তবে ডাটাবেসটি ফেলে দেওয়ার জন্য আপনাকে নিম্নলিখিত কোডটি কার্যকর করতে হবে।

যদি ডিবি_আইডি ('অ্যাপলুয়ালস') ডেটাবেসের অ্যাপলিকেশনগুলি শেষ না করে

ফলাফলটি নিম্নরূপ হবে।

একটি পুরাতন পদ্ধতি ব্যবহার করে ডাটাবেসটি ফেলে দিন

নতুন পদ্ধতি: এসকিউএল সার্ভার ২০১ 2016 এবং এর উপরের সংস্করণে যদি উপস্থিত থাকে তবে ড্রপ করুন

এসকিউএল সার্ভার ২০১ 2016 এবং এর উপরে একটি ডাটাবেস অবজেক্ট ড্রপ করতে আমাদের একটি সাধারণ বিবৃতি কার্যকর করতে হবে।

উপস্থিত থাকলে টেবিলটি ড্রপ করুন:

কোনও সঞ্চিত টেবিল বিদ্যমান থাকলে তা সরাতে আমরা এসকিউএল সার্ভার 2016 তে নীচে হিসাবে একটি বিবৃতি লিখতে পারি।

টেবিলটি ড্রপ করুন যদি উপস্থিত থাকে তবে dbo.temp

আউটপুট যেমন হবে।

নতুন পদ্ধতিটি ব্যবহার করে টেবিলটি ফেলে দিন

উপস্থিত থাকলে ড্রপ পদ্ধতি:

এখন আমরা নিচের কোডটি সম্পাদন করে নিবন্ধের শুরুতে তৈরি করা সঞ্চিত পদ্ধতিটি ফেলে দেব।

Dbo.sp_temp উপস্থিত থাকলে ড্রপ প্রক্রিয়া

আউটপুট নীচের মত হবে।

নতুন পদ্ধতিটি ব্যবহার করে টেবিলটি ফেলে দিন

যতক্ষণ সিনট্যাক্স সম্পর্কিত, এই সাধারণ বিবৃতিটি বোঝা সহজ এবং মনে রাখা সহজ। একইভাবে, অন্যান্য ডাটাবেস অবজেক্টগুলি ফেলে দেওয়ার জন্য আমরা একই পদ্ধতিটি অনুসরণ করতে পারি।

উপস্থিত থাকলে ডাটাবেসটি ফেলে দিন:

আপনি যদি বিদ্যমান চেক ব্যবহার করে ডেটাবেস ড্রপ করতে চান তবে নিম্নলিখিত কোডটি কার্যকর করুন

যদি অ্যাপলীগুলি উপস্থিত থাকে তবে মাস্টার যান ডেটাবেস ব্যবহার করুন

আউটপুট নীচের মত হবে।

নতুন পদ্ধতিটি ব্যবহার করে ডাটাবেসটি ড্রপ করুন

এই পদ্ধতিটি ব্যবহারের সুবিধাটি হ'ল যদি ডাটাবেসটি না থাকে তবে এটি কোনও ত্রুটি সৃষ্টি করে না, ব্যাচের পরবর্তী বিবৃতি কার্যকর করা অবিরত থাকবে। আসুন ইতিমধ্যে বাদ দেওয়া ডাটাবেসটি আবার ফেলে দেওয়ার চেষ্টা করি।

ইতিমধ্যে বাদ দেওয়া ডাটাবেসটিকে আবার ফেলে দেওয়ার সময় ত্রুটি দেখা দেয়।

একইভাবে, আমরা ডাটাবেস থেকে সূচি, ভিউ, সিকোয়েন্স, অ্যাসেম্বলিসি ইত্যাদি ফেলে দিতে পারি।

3 মিনিট পড়া