আপনি স্পষ্টতই পরামর্শ দিচ্ছেন যে CONSTRAINT
কোনও ডাটাবেসে সেই অ্যাপ্লিকেশন দ্বারা প্রয়োগ করা উচিত যা / যেটি ডাটাবেস অ্যাক্সেস করে?
আছে অনেক কারণে এই একটি খারাপ (খারাপ, খারাপ ...) ধারণা।
1) আপনি যদি কোনও "রোল-আপনার নিজের" প্রতিবন্ধকতা "ইঞ্জিন" তৈরি করছেন (যেমন আপনার অ্যাপ্লিকেশন কোডের মধ্যে), তবে আপনি কেবল ওরাকল / এসকিউএল সার্ভার / মাইএসকিউএল / পোস্টগ্রিসকিউএল / <কে ... যা ব্যয় করেছেন তা অনুকরণ করছেন ... বছর লেখার। আক্ষরিক মিলিয়ন মিলিয়ন ব্যবহারকারী তাদের বছরগুলিতে তাদের নিয়ন্ত্রণ কোড পরীক্ষা করেছে ।
থেকে - 2) আপনি এবং আপনার দলের কাছে বেয়াদবি, তাই না বছর একটি বিষয় সঠিক এমনকি এটি পেতে যাচ্ছি এখানে , 40 লাখ ডলার মাইএসকিউএল কোড একা খরচ। এবং মাইএসকিউএল হ'ল উপরের 3 টি সার্ভারের মধ্যে সস্তা, এবং তারা চেক চুক্তিগুলি প্রয়োগ করে না। স্পষ্টতই, পুরোপুরি সঠিকভাবে আরআই (রেফারেন্সিয়াল ইন্টিগ্রিটি) পাওয়া শক্ত।
আমি প্রায়শই ওরাকল ফোরামগুলি ব্যবহার করতাম এবং আমি আপনাকে কতবার বলতে পারি না যে কোনও দুর্বল ব্যবস্থাপক / প্রোগ্রামার তার উপর একটি প্রজেক্ট চাপিয়েছেন যেখানে তার প্রতিভা আগে যে চাকরিপ্রাপ্ত ব্যক্তির আপনার পরামর্শ অনুসারে কাজ করার "উজ্জ্বল" ধারণা ছিল? ।
জোনাথন লুইস ( ওরাকল অপটিমাইজারের মৌলিক বিষয়গুলিতে তিনি 550 পৃষ্ঠার একটি বই লিখেছিলেন ) কোনও হিসাবে নেই। অন্য একটি বইতে তাঁর ডিজাইন বিপর্যয়ের 2 (" ওক টেবিলের গল্পগুলি " - ওক টেবিলটি ওরাকল বিশেষজ্ঞদের একটি দল)
- ওরাকলের সীমাবদ্ধতা যাচাই করার ক্ষমতাগুলির পরিবর্তে আমরা অ্যাপ্লিকেশন পর্যায়ে ডেটা অখণ্ডতা যাচাই করব।
3) এমনকি যদি কোনও অলৌকিক কাজ করে আপনি আরআইকে যথাযথভাবে প্রয়োগ করতে পারেন তবে আপনাকে সেই ডাটাবেসের স্পর্শকারী প্রতিটি অ্যাপ্লিকেশনটির জন্য বার বার এটি পুরোপুরি পুনরায় প্রয়োগ করতে হবে - এবং যদি আপনার ডেটা গুরুত্বপূর্ণ হয়, তবে নতুন অ্যাপ্লিকেশনগুলি হবে। দৃষ্টান্ত হিসাবে এটি নির্বাচন করা আপনাকে এবং আপনার সহকর্মী প্রোগ্রামারদের (সমর্থন কর্মী এবং বিক্রয় উল্লেখ না করে) অবিচ্ছিন্নভাবে আগুন-লড়াই ও দুর্দশার জীবনযাত্রায় নিয়ে যাবে।
অ্যাপ্লিকেশন স্তরে ডেটা কনট্রন্টগুলি প্রয়োগ করার জন্য এখানে , এখানে এবং এখানে পাগলের কমতি নেই বলে আপনি আরও পড়তে পারেন ।
আপনার প্রশ্নের বিশেষভাবে উত্তর দিতে:
শুধু এগুলি কেন ঘোষিত হয়? এটি খুব সহায়ক বলে মনে হচ্ছে, তবে এটি কার্যকারী এমন একটি ডাটাবেস থাকা দরকার
কারণ KEY
গুলি (হয় PRIMARY
, FOREIGN
, UNIQUE
বা শুধু সাধারণ INDEX
স্প্যানিশ ভাষায়) ঘোষিত হয় যখন এটা যে, কঠোরভাবে না তা না হয়, প্রয়োজনীয় একটি ডাটাবেস তাদের আছে জন্য এটি জন্য কাজ একেবারে প্রয়োজনে তাদের ফাংশন জন্য ঘোষিত হওয়ার জন্য ভাল ।