1NF কি
৷1NF হল ডিবিএমএসের প্রথম সাধারণ ফর্ম, এটিকে স্বাভাবিক করার জন্য একটি অস্বাভাবিক টেবিলে প্রয়োগ করা হয়। একটি অস্বাভাবিক টেবিলে নিম্নলিখিত সমস্যাগুলি রয়েছে যা আমাদের একটি নিখুঁত ডেটাবেস ডিজাইন পেতে এড়াতে হবে -
অনরমালাইজড টেবিলের সমস্যা
ডেটা রিডানডেন্সি
একই ডেটা আইটেম একাধিকবার সংরক্ষণ করা ডেটা রিডানডেন্সি নামে পরিচিত৷
আসুন একটি উদাহরণ দেখি -
আমাদের একজন
সারণী 1.1
EmpID | EmpName৷ | EmpAddress |
001 | অমিত | 11, VA স্ট্রিট, নিউ ইয়র্ক |
002 | টম | 11, VA স্ট্রিট, নিউ ইয়র্ক |
003 | ডেভিড | 11, VA স্ট্রিট, নিউ ইয়র্ক |
004 | স্টিভ | 13, HG ব্লক, ফিলাডেলফিয়া |
005 | জেফ | 13, HG ব্লক, ফিলাডেলফিয়া |
এটি সমাধান করতে, একটি পৃথক টেবিলে কর্মচারীর ঠিকানা সংরক্ষণ করুন এবং
আপডেট করার অসঙ্গতি
এটি ঘটে যখন আপনি একটি টেবিল আপডেট করার সময় সমস্যার সম্মুখীন হন৷
আসুন একটি উদাহরণ দেখি -
সারণী 1.2
EmpID | EmpName | EmpAddress | EmpDept |
001 | অমিত | 11, VA স্ট্রিট, নিউ ইয়র্ক | A |
002 | টম | 11, VA স্ট্রিট, নিউ ইয়র্ক | B |
003 | টম | 11, VA স্ট্রিট, নিউ ইয়র্ক | C |
004 | স্টিভ | 13, HG ব্লক, ফিলাডেলফিয়া | D |
005 | জেফ | 27, ZR ব্লক, ভার্জিনিয়া | E |
আমাদের যদি দুটি বিভাগের কর্মচারী টমের ঠিকানা আপডেট করতে হয়, তবে আমাদের দুটি সারি আপডেট করতে হবে। যদি আমরা শুধুমাত্র একটি একক সারি আপডেট করি, তাহলে টমের দুটি ভিন্ন ঠিকানা থাকবে যা ডেটাতে অসঙ্গতি সৃষ্টি করবে।
মোছার অসঙ্গতি
ধরা যাক কোম্পানি ডি ডিপার্টমেন্ট বন্ধ করার সিদ্ধান্ত নিয়েছে, তারপর সারি মুছে ফেলার ফলে কর্মচারী স্টিভের ডেটাও মুছে যাবে।
সন্নিবেশ অসঙ্গতি
এটি ঘটে যখন আপনি এমন একটি রেকর্ডে ডেটা সন্নিবেশ করার চেষ্টা করেন যা বিদ্যমান নেই৷
সাধারণীকরণ উপরের সমস্ত সমস্যা/অসঙ্গতিগুলিকে সরিয়ে দেয় এবং আপনাকে একটি সাধারণ নিখুঁত ডাটাবেস ডিজাইন দেয় যা একজন ডাটাবেস প্রশাসক পছন্দ করে।
আসুন দেখি কিভাবে ফার্স্ট নরমাল ফর্ম (1NF)
ব্যবহার করে ডেটা স্বাভাবিক করা যায়কেন INF
প্রথম সাধারণ ফর্ম (1 INF) ডেটা রিডানডেন্সি সমস্যা এবং ডাটাবেসের অসঙ্গতিগুলি দূর করার জন্য উপযোগী, যেমনটি উপরের বিভাগে দেখানো হয়েছে। 1NF-এর সমস্ত বৈশিষ্ট্যের পারমাণবিক ডোমেন থাকা উচিত। যদি এটি পারমাণবিক না হয়, তাহলে আপনার ডাটাবেসের একটি খারাপ ডিজাইন হচ্ছে। এটি স্বাভাবিককরণের প্রথম ধাপ।
তাই, একটি টেবিলকে স্বাভাবিক আকারে রাখার জন্য সর্বাগ্রে নিয়ম হল যে এটিতে শুধুমাত্র পারমাণবিক মান থাকতে হবে।
উদাহরণ
নীচের উদাহরণে DeptRole কলাম ছাড়া প্রতিটি কলামে পারমাণবিক মান সমন্বিত একটি টেবিল রয়েছে। অতএব, DeptRole কলাম ডিপার্টমেন্ট A, B, এবং C এর পারমাণবিক মান নিয়ম লঙ্ঘন করে।
সারণী 1.3
DeptId | DeptName | DeptRole |
001 | A | অর্থ, এইচআর |
002 | B | প্রোগ্রামিং, নেটওয়ার্কিং |
003 | C | ম্যানেজমেন্ট, মার্কেটিং |
004 | D | অপারেশন |
আসুন এখন এটি সংশোধন করি এবং 1NF:
DeptId | অধিদপ্তরের নাম | DeptRole |
001 | A | অর্থ |
001 | A | HR |
002 | B | প্রোগ্রামিং |
002 | B | নেটওয়ার্কিং৷ |
003 | C | ব্যবস্থাপনা |
003 | C | বিপণন |
004 | D | অপারেশন |
এখন উপরের সারণীটি 1NF-এ রয়েছে এবং নিম্নলিখিত স্ক্রিনশটে সংক্ষিপ্ত হিসাবে আমাদের প্রতিটি কলামে পারমাণবিক মান রয়েছে -