Database Tutorials UNIQUE এবং CHECK Constraints গাইড ও নোট

311

SQLite-এ CONSTRAINTS হল ডাটাবেসে ডেটার ইন্টিগ্রিটি (integrity) এবং সঠিকতা নিশ্চিত করার জন্য ব্যবহার করা হয়। UNIQUE এবং CHECK দুটি কনস্ট্রেইন্ট যা টেবিলের ডেটার বৈধতা এবং নির্দিষ্ট নিয়ম নিশ্চিত করতে ব্যবহৃত হয়।

এই কনস্ট্রেইন্টগুলোর মাধ্যমে, আপনি টেবিলের কলামগুলোর মানের বৈধতা, ইউনিকনেস এবং ডেটার সঠিকতা নিয়ন্ত্রণ করতে পারেন।


১. UNIQUE Constraint

UNIQUE Constraint একটি কলামে ডুপ্লিকেট মান (duplicate values) প্রবেশ করতে নিষেধ করে। এর মাধ্যমে, একটি টেবিলের কোনো নির্দিষ্ট কলামে প্রতিটি মান অবশ্যই ইউনিক (অন্যদের সাথে মিল নেই) হতে হবে।

কীভাবে কাজ করে:

  • UNIQUE কনস্ট্রেইন্টটি কলামে এমন মান ইনসার্ট করতে বাধা দেয় যা আগেই ইনসার্ট করা হয়েছে।
  • এটি এক বা একাধিক কলামের জন্য ব্যবহার করা যেতে পারে।

সিনট্যাক্স:

CREATE TABLE table_name (
    column_name1 data_type UNIQUE,
    column_name2 data_type,
    ...
);

উদাহরণ:

CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    email TEXT UNIQUE
);

এই কুয়েরি users টেবিলের email কলামে UNIQUE কনস্ট্রেইন্ট তৈরি করবে, অর্থাৎ email কলামে কোন ডুপ্লিকেট মান প্রবেশ করতে পারবে না।


২. CHECK Constraint

CHECK Constraint একটি কলামের মান নির্দিষ্ট শর্ত বা সীমার মধ্যে থাকতে বাধ্য করে। এর মাধ্যমে, আপনি টেবিলের কলামে কী ধরনের ডেটা থাকতে পারে তা নিয়ন্ত্রণ করতে পারেন, যেমন একটি কলামে কেবলমাত্র পজিটিভ নম্বর থাকতে হবে বা বয়সের জন্য একটি নির্দিষ্ট সীমা থাকতে হবে।

কীভাবে কাজ করে:

  • CHECK কনস্ট্রেইন্ট একটি শর্ত (condition) সংজ্ঞায়িত করে, যা ইনসার্ট বা আপডেট অপারেশন চলাকালীন কলামের মান যাচাই করা হয়।
  • শর্তটি একটি Boolean এক্সপ্রেশন হতে হবে, যা সত্য বা মিথ্যা হতে পারে।

সিনট্যাক্স:

CREATE TABLE table_name (
    column_name data_type,
    CONSTRAINT constraint_name CHECK (condition)
);

উদাহরণ:

CREATE TABLE users (
    id INTEGER PRIMARY KEY,
    name TEXT,
    age INTEGER,
    CONSTRAINT age_check CHECK (age >= 18)
);

এই কুয়েরি users টেবিলের age কলামে CHECK কনস্ট্রেইন্ট ব্যবহার করছে, যা নিশ্চিত করবে যে age এর মান কখনো ১৮ এর কম হবে না। অর্থাৎ, সবে থেকে ১৮ বছরের কম বয়সী ব্যবহারকারী ইনসার্ট করা যাবে না।


UNIQUE এবং CHECK Constraints এর মধ্যে পার্থক্য

বৈশিষ্ট্যUNIQUECHECK
ব্যবহারডুপ্লিকেট মান নিষিদ্ধ করতে ব্যবহৃত হয়।নির্দিষ্ট শর্ত বা সীমার মধ্যে ডেটা থাকতে বাধ্য করে।
শর্তশুধুমাত্র ডেটার ইউনিকনেস (unique) নির্ধারণ করে।ব্যবহারকারী নির্ধারিত শর্ত বা নিয়মের ভিত্তিতে কাজ করে।
একাধিক কলামএকাধিক কলামের উপরও ইউনিক কনস্ট্রেইন্ট প্রয়োগ করা যায়।এক বা একাধিক কলামের উপর শর্ত প্রয়োগ করা যায়।
প্রতিক্রিয়াএকই মান ইনসার্ট করলে ত্রুটি তৈরি হয়।শর্ত পূরণ না হলে ইনসার্ট বা আপডেট ব্যর্থ হয়।

সারাংশ

UNIQUE কনস্ট্রেইন্ট ডুপ্লিকেট ডেটা নিষিদ্ধ করে, যা একটি টেবিলের নির্দিষ্ট কলামে ইউনিক মান নিশ্চিত করতে সাহায্য করে। অন্যদিকে, CHECK কনস্ট্রেইন্ট একটি নির্দিষ্ট শর্ত বা সীমার মধ্যে ডেটা রাখে, যেমন বয়স ১৮ এর বেশি হতে হবে বা কোনো কলামে নির্দিষ্ট ডেটা টাইপ থাকতে হবে। এই কনস্ট্রেইন্টগুলি ব্যবহার করে, আপনি ডাটাবেসের ডেটার সঠিকতা এবং এক্সপেকটেড রেঞ্জ বজায় রাখতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...