Database Tutorials Unique Constraints কনফিগার করা গাইড ও নোট

356

নীওফোরজে (Neo4J) ডেটাবেসে ইউনিক কনস্ট্রেইন্টস (Unique Constraints) একটি গুরুত্বপূর্ণ বৈশিষ্ট্য, যা নিশ্চিত করে যে নির্দিষ্ট প্রোপার্টি বা ক্ষেত্রের মান অবশ্যই ইউনিক (Unique) হবে। এটি ডেটার এক্সপ্লোরেশন এবং সঠিকতা বজায় রাখতে সাহায্য করে, যেমন কোনো ডুপ্লিকেট ইনফরমেশন বা নোড (Node) তৈরি হওয়া প্রতিরোধ করা। ইউনিক কনস্ট্রেইন্টস কনফিগার করা খুবই সহজ এবং সাইফার (Cypher) কুয়েরি ভাষার মাধ্যমে এটি সম্পন্ন করা হয়।


ইউনিক কনস্ট্রেইন্ট তৈরি

নীওফোরজে-তে ইউনিক কনস্ট্রেইন্ট তৈরি করতে সাইফার কুয়েরি ব্যবহার করা হয়। যদি আপনি একটি নোডের প্রোপার্টি ইউনিক রাখতে চান, তাহলে নিচের কুয়েরি ব্যবহার করতে হবে:

CREATE CONSTRAINT ON (n:Person) ASSERT n.email IS UNIQUE

এখানে, Person লেবেল (Label) এর মধ্যে email প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট তৈরি করা হয়েছে, অর্থাৎ একই ইমেইল অ্যাড্রেসে দুটি নোড থাকতে পারবে না।


ইউনিক কনস্ট্রেইন্টের ধরন

নীওফোরজে-তে দুটি ধরনের ইউনিক কনস্ট্রেইন্ট ব্যবহার করা যায়:

লেবেল-ভিত্তিক ইউনিক কনস্ট্রেইন্ট

এটি নির্দিষ্ট একটি লেবেল (Label) এর প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট তৈরি করে। উদাহরণস্বরূপ, যদি আপনি User লেবেলের মধ্যে username প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট তৈরি করতে চান:

CREATE CONSTRAINT ON (u:User) ASSERT u.username IS UNIQUE

মাল্টিপল প্রোপার্টি-ভিত্তিক ইউনিক কনস্ট্রেইন্ট

আপনি একাধিক প্রোপার্টির উপরও ইউনিক কনস্ট্রেইন্ট তৈরি করতে পারেন। উদাহরণস্বরূপ, Person লেবেলের মধ্যে firstName এবং lastName প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট তৈরি করা:

CREATE CONSTRAINT ON (p:Person) ASSERT (p.firstName, p.lastName) IS UNIQUE

এখানে, firstName এবং lastName এর যুগল (Pair) একত্রে ইউনিক হতে হবে।


ইউনিক কনস্ট্রেইন্ট পরীক্ষা করা

একবার কনস্ট্রেইন্ট তৈরি করার পর, আপনি এটি পরীক্ষা করতে পারবেন যাতে নিশ্চিত হওয়া যায় যে কনস্ট্রেইন্ট সঠিকভাবে কাজ করছে। উদাহরণস্বরূপ, যদি আপনি email প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট তৈরি করেছেন, তাহলে আপনি একটি ডুপ্লিকেট ইমেইল ইনপুট করার চেষ্টা করলে একটি ত্রুটি (Error) দেখতে পাবেন।

CREATE (a:Person {email: 'john.doe@example.com'})
CREATE (b:Person {email: 'john.doe@example.com'})

এখানে, যেহেতু email প্রোপার্টির জন্য ইউনিক কনস্ট্রেইন্ট রয়েছে, দ্বিতীয় কুয়েরিটি ত্রুটি উৎপন্ন করবে।


কনস্ট্রেইন্ট মুছে ফেলা

যদি কোনো ইউনিক কনস্ট্রেইন্ট মুছে ফেলতে চান, তাহলে আপনি সাইফার কুয়েরির মাধ্যমে সেটি বাতিল করতে পারেন। উদাহরণস্বরূপ, email প্রোপার্টির ইউনিক কনস্ট্রেইন্ট মুছে ফেলতে:

DROP CONSTRAINT ON (n:Person) ASSERT n.email IS UNIQUE

এই কুয়েরি দিয়ে আপনি Person লেবেল এর email প্রোপার্টির উপর তৈরি করা ইউনিক কনস্ট্রেইন্ট মুছে ফেলতে পারবেন।


সারাংশ

নীওফোরজে (Neo4J) ডেটাবেসে ইউনিক কনস্ট্রেইন্টস ব্যবহার করে ডেটার সঠিকতা এবং এক্সপ্লোরেশন নিশ্চিত করা যায়। এটি বিভিন্ন প্রোপার্টির উপর ইউনিক কনস্ট্রেইন্ট তৈরি করতে সহায়তা করে, যাতে ডুপ্লিকেট ডেটা প্রতিরোধ করা যায়। সাইফার (Cypher) কুয়েরি ব্যবহার করে আপনি ইউনিক কনস্ট্রেইন্ট তৈরি, পরীক্ষা, এবং মুছে ফেলতে পারেন, যা ডেটাবেসের কার্যকারিতা এবং সঠিকতা উন্নত করতে সাহায্য করে।


Content added By
Promotion

Are you sure to start over?

Loading...