সনাক্তকরণ এবং অ-সনাক্তকারী সম্পর্কগুলির মধ্যে পার্থক্য কী?


800

আমি পার্থক্যগুলি পুরোপুরি উপলব্ধি করতে সক্ষম হইনি। আপনি উভয় ধারণাটি বর্ণনা এবং বাস্তব বিশ্বের উদাহরণ ব্যবহার করতে পারেন?


11
এই প্রশ্নের উত্তরগুলি এত বিভ্রান্তিকর এটি মজাদার নয়
ডেনিস

ভাল প্রশ্ন, চাকা পুনর্নবীকরণ করা হয় না: পিটার চেন। সত্তা সম্পর্ক মডেল, তথ্য একটি ইউনিফায়েড দেখুন দিকে, 1976 § 2.3.2: " । সম্পর্ক সত্ত্বা চিহ্নিতকরণের জন্য ব্যবহার করা হয়, তাহলে আমরা এটা একটি দুর্বল সত্তা সম্পর্ক ডাকবে সম্পর্ক সত্ত্বা সনাক্তকরণের জন্য ব্যবহার করা হয় না, তাহলে আমরা ডাকবে এটি একটি নিয়মিত সত্তার সম্পর্ক "। ও.পি. প্রশ্নটি এটিকে ফুটিয়ে তোলে : দুর্বল / নিয়মিত সত্তার সম্পর্ক কী?
মিনিট

উত্তর:


1063
  • একটি সনাক্তকারী সম্পর্ক হ'ল যখন সন্তানের টেবিলে একটি সারিটির অস্তিত্ব কোনও পিতামাতার সারণীতে একটি সারির উপর নির্ভর করে। কারণ এটি এই দিন প্রচলিত অভ্যাস একটি শিশু টেবিল একটি pseudokey তৈরি করতে এই বিভ্রান্তিকর হতে পারে, কিন্তু না সন্তানের প্রাথমিক কী অভিভাবক অংশ বিদেশী কী আছে। সাধারণত, এটি করার "সঠিক" উপায়টি হ'ল সন্তানের প্রাথমিক কীটির বিদেশী কী অংশটি তৈরি করা। তবে যৌক্তিক সম্পর্কটি হ'ল পিতা-মাতা ছাড়া সন্তানের অস্তিত্ব থাকতে পারে না।

    উদাহরণ: A Personএর এক বা একাধিক ফোন নম্বর রয়েছে। তাদের যদি কেবল একটি ফোন নম্বর থাকে, আমরা কেবল এটির একটি কলামে এটি সঞ্চয় করতে পারি Person। যেহেতু আমরা একাধিক ফোন নম্বর সমর্থন করতে চাই, আমরা একটি দ্বিতীয় টেবিল তৈরি করি PhoneNumbers, যার প্রাথমিক কীটিতে টেবিলের person_idরেফারেন্স অন্তর্ভুক্ত রয়েছে Person

    আমরা ফোন নম্বর (গুলি) কোনও ব্যক্তির সাথে সম্পর্কিত হিসাবে ভাবতে পারি, যদিও সেগুলি পৃথক টেবিলের বৈশিষ্ট্য হিসাবে মডেল করা হয়। এটি একটি দৃ cl় সূত্র যে এটি একটি সনাক্তকারী সম্পর্ক (এমনকি আমরা যদি আক্ষরিক person_idপ্রাথমিক কীতে অন্তর্ভুক্ত না করি PhoneNumbers)।

  • একটি অ-শনাক্ত সম্পর্ক যখন প্রাথমিক কী পিতা বা মাতা গুণাবলীর হয় না প্রাথমিক কী সন্তানের বৈশিষ্ট্যাবলী হয়ে। এর একটি ভাল উদাহরণ হ'ল একটি সন্ধানের টেবিল, যেমন Person.stateএর প্রাথমিক কীটি উল্লেখ করার জন্য একটি বিদেশী কী States.statePersonসম্মানের সাথে একটি শিশু টেবিল States। তবে একটি সারি Personএর stateবৈশিষ্ট্য দ্বারা চিহ্নিত করা যায় না । অর্থাৎ stateএর প্রাথমিক কীটির অংশ নয় Person

    একটি অ-সনাক্তকারী সম্পর্ক al চ্ছিক বা বাধ্যতামূলক হতে পারে , যার অর্থ বিদেশী কী কলামটি NULL কে যথাক্রমে NULL বা মঞ্জুরি দেয়।


বনাম সনাক্তকরণ সম্পর্কিত সম্পর্কিত সম্পর্কে এখনও বিভ্রান্তের আমার উত্তরটি দেখুন


9
+1: বিল, "চাইল্ড টেবিলের জন্য সিউডোকি তৈরি করা এখন প্রচলিত অনুশীলন, তবে সন্তানের প্রাথমিক কীটির পিতামাতার অংশে বিদেশী কী তৈরি করা হয়নি" - এটি কেন সম্পর্কিত কোনও লিঙ্ক? গুগল আমাকে ব্যর্থ করছে।
হোবডেভ

17
দেখে মনে হচ্ছে যে "যথাযথভাবে" সম্পর্কগুলি চিহ্নিত করার ফলে অযৌক্তিকভাবে বিশাল প্রাথমিক কীগুলি বাড়ে। যেমন বিল্ডিংয়ে ফ্লোর রয়েছে রুমে বিছানা রয়েছে। বেডের জন্য পিকে হবে (বিছানা_আইডি, ফ্লোর_আইডি, রুম_আইডি, বিল্ডিং_আইডি)। এটা আশ্চর্যজনক বলে মনে হয় যে আমি এটি বাস্তবে কখনও দেখিনি, বা এটি কোনও কিছু করার উপায় হিসাবে পরামর্শও শুনিনি। এটি পিকেতে প্রচুর রিলান্ড্যান্ট ডেটা।
হোবডেভ

24
@ হোবোদাভে: আমি বহু-কলামের প্রাথমিক কীগুলি দেখতে পেয়েছি যা আরও বড়। তবে আমি আপনার বক্তব্য গ্রহণ। মাল্টি-কলাম প্রাথমিক কীগুলি আরও তথ্য সরবরাহ করে তা বিবেচনা করুন; আপনি কোনও যোগদান Bedsনা করেই একটি নির্দিষ্ট বিল্ডিংয়ের সমস্ত বিছানার জন্য টেবিলটি জিজ্ঞাসা করতে পারেন ।
বিল কারভিন

2
@ ইউজিন, হ্যাঁ আমি আশা করব এটি একটি অ-সনাক্তকারী সম্পর্ক হবে। user_idএটি নিজেই প্রাথমিক কী হওয়া উচিত এবং updated_byএটি কোনও বহু-কলাম প্রাথমিক কীটির অংশ নয়।
বিল কারভিন 14

4
আমি এটি কখনও মডেল করতে ব্যবহার করব না। সর্বোত্তম উত্তরটি নীচে "আকসা রাও" থেকে পাওয়া গেছে যা নিম্নলিখিতটি জানিয়েছে: "একটি সনাক্তকারী সম্পর্ক অর্থ পিতামাতাকে ছাড়াই সন্তানের টেবিলটি অনন্যভাবে চিহ্নিত করা যায় না।" কারণ আপনার সংজ্ঞাটি অপ্রয়োজনীয় শব্দার্থক যোগ করে যা লোককে বিভ্রান্ত করতে পারে। এটি শনাক্তকরণগুলির কারণগুলির মধ্যে নির্ভরতা নয় কারণ আপনি কোনও সনাক্তকরণ বা অ-পরিচয়হীন সম্পর্ক তৈরি করেন।
সেবাস্তিয়ান

887

বাস্তব বিশ্বের আরও একটি ব্যাখ্যা রয়েছে:

একটি বই মালিকের অন্তর্ভুক্ত এবং কোনও মালিক একাধিক বইয়ের মালিক হতে পারে। তবে, মালিকটি ছাড়াও বইটি বিদ্যমান থাকতে পারে এবং এর মালিকানা এক মালিক থেকে অন্য একজনে পরিবর্তন হতে পারে। একটি বই এবং একটি মালিকের মধ্যে সম্পর্ক একটি অ-সনাক্তকারী সম্পর্ক।

একটি বই অবশ্য একজন লেখক লিখেছেন এবং লেখক একাধিক বই লিখতে পারতেন। তবে, বইটি কোনও লেখকের লেখা দরকার - এটি কোনও লেখক ছাড়া থাকতে পারে না। সুতরাং, বই এবং লেখকের মধ্যে সম্পর্ক একটি সনাক্তকারী সম্পর্ক।


2
একটি শালীন ব্যাখ্যা তবে আমি বিশ্বাস করি উদাহরণটি আরও কিছুটা প্রসারিত করাও শিক্ষামূলক। একটি বইয়ের বেশ কয়েকটি পৃষ্ঠা রয়েছে। এটি পৃষ্ঠাগুলি ছাড়া থাকতে পারে না এবং তাই আমরা উপসংহারে আসতে পারি যে কোনও বই এবং এটির পৃষ্ঠাগুলির সংখ্যার মধ্যে সম্পর্কও একটি সনাক্তকারী সম্পর্ক। তবে পৃষ্ঠাগুলির সংখ্যাটি কি বইয়ের জন্য কোনও সনাক্তকরণ প্রকল্পের (কী) অংশ হবে? সম্ভবত না. "সম্পর্ক চিহ্নিতকরণ" শব্দটি সাধারণত বৈশিষ্ট্যগুলি সনাক্তকরণ সম্পর্কিত সম্পর্কের জন্য সংরক্ষিত থাকে - সম্পর্কের ক্ষেত্রে প্রধান বৈশিষ্ট্যগুলি।
এনভিজেল

13
বইটি যদি একাধিক লেখক লিখেছিলেন তবে কী হবে? এটি আর সম্পর্কটিকে এম: এন টাইপ হিসাবে চিহ্নিত করছে না, কেন?
এনজিিক্স

2
এই বাস্তব উদাহরণগুলি অকেজো। আপনি কীভাবে ER তে সারণী তৈরি করবেন এবং কীভাবে ডেটা অখণ্ডতা বজায় রাখবে তা বুঝতে পেরে আপনি এই উদাহরণগুলি ফেলে দেবেন। আপনি যদি দুটি সত্তার মধ্যে দৃ strong় সম্পর্ক তৈরি করেন, আপনি অন্য সত্তার পিকে সাথে মিলিত সত্তা সারণীতে একটি প্রাথমিক কী তৈরি করতে বাধ্য করছেন। যদি আপনার মডেল আপনাকে অনুমতি দেয় যে একই বইতে একাধিক লেখক থাকতে পারে তবে এটি শক্তিশালী হওয়া ঠিক ok তবে যদি আপনার মডেল আপনাকে কেবলমাত্র 1 জন লেখক 1 বইয়ের অনুমতি দেয় তবে দৃ strong় সম্পর্ক ব্যবহারের কারণে আপনার সেই বাধা থাকতে পারে না PK(Book.id, Book.person_id)
সেবাস্তিয়ান

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

3
কী হচ্ছে ছেলেরা !!, এটি কোনও বৈধ উদাহরণ নয় the Identifying relationship !!! হ্যাঁ একটি বই একজন লেখক ছাড়া লেখা যাবে না কিন্তু, বই টেবিলের লেখক ক্ষেত্র চিহ্নিতকরণ না বই সারি !!!
হিসাবরক্ষক

33

বিলের উত্তর সঠিক, তবে এটি অবাক করে দিয়েছিল যে অন্য সমস্ত উত্তরগুলির মধ্যে কেউই সবচেয়ে উল্লেখযোগ্য দিকটি দেখায় না।

এটি বারবার বলা হয়, সম্পর্কের মধ্যে এবং চিহ্নিতকরণে বাবা-মা ছাড়া সন্তানের অস্তিত্ব থাকতে পারে না। (যেমন ব্যবহারকারী 287724 )। এটি সত্য তবে পয়েন্টটি পুরোপুরি মিস করে। এটি অর্জনের জন্য বিদেশী কীটি অকার্যকর হওয়া যথেষ্ট । এটি প্রাথমিক কী এর অংশ হওয়ার দরকার নেই।

সুতরাং আসল কারণ এখানে:

শনাক্তকরণ সম্পর্কের উদ্দেশ্য হ'ল বিদেশী কীটি পরিবর্তন করতে পারে না , কারণ এটি প্রাথমিক কীটির অংশ ... সুতরাং সনাক্তকরণ !!!


2
"1" এটি অর্জনের জন্য বিদেশী কী-টি নন-নালার পক্ষে যথেষ্ট হবে " এটি যথেষ্ট হওয়া উচিত , তবে দুর্ভাগ্যক্রমে এটি সত্তা ফ্রেমওয়ার্কের মতো যখন আসে না, যা আপনি চিহ্নিতকরণ সম্পর্কটি ব্যবহার না করে সঠিকভাবে কাজ করে না, তবে কোনও সত্তার "আইডি" ক্ষেত্রটি তার স্বতন্ত্রতা হারাতে পারে ন্যায়বিচারের ফলে একটি যৌগিক কী এর একটি অংশ।
ট্রায়ঙ্কো

25

একটি সনাক্তকারী সম্পর্ক উল্লেখ করে যে কোনও পিতা-মাতার অবজেক্ট ছাড়া শিশু অবজেক্টের অস্তিত্ব থাকতে পারে না

অ-সনাক্তকারী সম্পর্কগুলি বস্তুর মধ্যে নিয়মিত সংযোগ নির্দিষ্ট করে: 1: 1 বা 1: n কার্ডিনালিটি।

অ-সনাক্তকারী সম্পর্কগুলি alচ্ছিক হিসাবে সুনির্দিষ্টভাবে নির্দিষ্ট করা যেতে পারে যেখানে পিতামাতার প্রয়োজন নেই বা বাধ্যতামূলক যেখানে পিতামাতার সারণী কার্ডিনালিটি সেট করে একটি পিতামাতার প্রয়োজন ...


6
এটি শনাক্তকরণ সম্পর্কের চেয়ে সম্পর্কের মোট অংশগ্রহণের বর্ণনার মতো শোনাচ্ছে।
টমাস প্যাড্রন-ম্যাকার্থি

1
আপনি আক্ষরিকভাবে এমন একজনের সাথে প্রতিযোগিতা করছেন যার 218k খ্যাতি রয়েছে। কেবল সেখানে ফেলে দেওয়া কারণ আপনি উভয়ই আমার চেয়ে বেশি জানেন।
মার্ক ডিমিলো

আমি উপরোক্ত সংজ্ঞাগুলির সাথে একমত নই। আপনার কাছে এমন কোনও বস্তু থাকতে পারে যা তার পিতামাতার উপর নির্ভর করে এবং আপনি চান যে এই বস্তুটি কেবল 1 প্যারেন্ট সারিটির সাথে সংযুক্ত রাখতে সীমাবদ্ধ হোক। একজন Houseআছে Wallসে। আপনি ঘর সরিয়েছেন এবং আপনার দেওয়াল নেই। তবে একটি প্রাচীর কেবল একটি বাড়ির অন্তর্গত। সুতরাং দৃ strong়-সম্পর্ক স্থাপন কাজ করবে না: PK(Wall.id, House.id)আপনাকে একই বাড়িতে অন্য দেয়ালে একই প্রাচীর inোকানোর অনুমতি দেবে।
সেবাস্তিয়ান

15

এখানে একটি ভাল বর্ণনা:

দুটি সত্তার মধ্যে সম্পর্ককে "সনাক্তকরণ" বা "অ-সনাক্তকারী" বলে শ্রেণিবদ্ধ করা যেতে পারে। অভিভাবক সত্তার প্রাথমিক কীটি যখন শিশু সত্তার প্রাথমিক কীতে অন্তর্ভুক্ত থাকে তখন সনাক্তকরণের সম্পর্কগুলি বিদ্যমান। অন্যদিকে, যখন পিতামাতার সত্তার প্রাথমিক কীটি শিশু সত্তায় অন্তর্ভুক্ত করা হয় তবে সন্তানের সত্তার প্রাথমিক কী হিসাবে অংশ থাকে না তখন একটি অ-সনাক্তকারী সম্পর্ক বিদ্যমান। এছাড়াও, অ-সনাক্তকারী সম্পর্কগুলিকে হয় "বাধ্যতামূলক" বা "অ-বাধ্যতামূলক" বলে শ্রেণিবদ্ধ করা যেতে পারে। একটি বাধ্যতামূলক অ-শনাক্তকরণ সম্পর্ক বিদ্যমান যখন শিশু টেবিলের মানটি শূন্য হতে পারে না। অন্যদিকে, যখন শিশু টেবিলের মানটি শূন্য হতে পারে তখন একটি অ-বাধ্যতামূলক অ-সনাক্তকারী সম্পর্ক বিদ্যমান।

http://www.sqlteam.com/article/database-design-and-modeling-fundamentals

এখানে শনাক্তকরণ সম্পর্কের একটি সাধারণ উদাহরণ:

Parent
------
ID (PK)
Name

Child
-----
ID (PK)
ParentID (PK, FK to Parent.ID) -- notice PK
Name

এখানে একটি সম্পর্কিত শনাক্তকরণ সম্পর্কিত সম্পর্ক নেই:

Parent
------
ID (PK)
Name

Child
-----
ID (PK)
ParentID (FK to Parent.ID) -- notice no PK
Name

1
আপনার উত্তরটি বিল কারভিনের দেওয়া বিপরীতে, বৈদেশিক কী "সন্তানের" নয় "বা" অবশ্যই "শিশু সারির প্রাথমিক কী এর অংশ হতে হবে না" এর মধ্যে পার্থক্যের মধ্যে রয়েছে।
নিকোল

@ অ্যান্ডি হোয়াইট তবে যখন কোনও তিনটি কলামের সমন্বিত প্রাথমিক কীটির অংশ হয় তখন কোনও সনাক্তকারী সম্পর্কের ক্ষেত্রে পিতামাতার প্রাথমিক কীটি বাধ্যতামূলক হতে পারে, অর্থাত্ নাল হতে পারে?
ফ্রেডেরিক ক্রাউটওয়াল্ড 21

10

ব্যবহারকারীর 287724 এর উত্তর বই এবং লেখকের সম্পর্কের নিম্নলিখিত উদাহরণ দেয়:

একটি বই তবে একজন লেখক লিখেছেন এবং লেখক একাধিক বই লিখতে পারতেন। তবে বইটি কোনও লেখক দ্বারা রচনা করা দরকার এটি কোনও লেখক ছাড়া থাকতে পারে না। সুতরাং বই এবং লেখকের মধ্যে সম্পর্ক একটি সনাক্তকারী সম্পর্ক।

এটি একটি খুব বিভ্রান্তিকর উদাহরণ এবং স্পষ্টভাবে হয় একটি বৈধ উদাহরণ না একটি জন্য identifying relationship

হ্যাঁ, একজন bookঅন্তত একটি ছাড়া লেখা যাবে না author, কিন্তু author(এটা বিদেশী কী) এর bookহয় চিহ্নিতকরণ নাbookbooksটেবিল!

আপনি অপসারণ করতে পারেন authorথেকে (এফ কে) bookসারি এবং এখনও কিছু অন্যান্য ক্ষেত্র (বই সারি চিহ্নিত করতে পারেন ISBN, ID... ইত্যাদি), কিন্তু বই না লেখক !!

আমি মনে করি এর একটি বৈধ উদাহরণ identifying relationshipহ'ল (পণ্য সারণি) এবং একটি (নির্দিষ্ট পণ্যের বিবরণ সারণী) এর মধ্যে সম্পর্ক1:1

products table
+------+---------------+-------+--------+
|id(PK)|Name           |type   |amount  |
+------+---------------+-------+--------+
|0     |hp-laser-510   |printer|1000    |
+------+---------------+-------+--------+
|1     |viewsonic-10   |screen |900     |
+------+---------------+-------+--------+
|2     |canon-laser-100|printer|200     |
+------+---------------+-------+--------+

printers_details table
+--------------+------------+---------+---------+------+
|Product_ID(FK)|manufacturer|cartridge|color    |papers|
+--------------+------------+---------+---------+------+
|0             |hp          |CE210    |BLACK    |300   |
+--------------+------------+---------+---------+------+
|2             |canon       |MKJ5     |COLOR    |900   |
+--------------+------------+---------+---------+------+
* please note this is not real data

এই উদাহরণে Product_IDমধ্যে printers_detailsটেবিল একটি এফ কে রেফারেন্স হিসেবে গণ্য করা হয় products.idটেবিল এবং একটি পি কে মধ্যে printers_detailsটেবিল, এই কারণ একটি চিহ্নিতকরণের সম্পর্ক নেই Product_ID(এফ কে) প্রিন্টার টেবিলে সনাক্ত করা শিশু টেবিল ভিতরে সারি, আমরা সরাতে পারবেন না product_idশিশু টেবিল থেকে, কারণ আমরা, কারণ আমরা হারিয়ে এটা প্রাথমিক কী কোন সারি সনাক্ত করতে পারে না

আপনি যদি এটি 2 লাইনে রাখতে চান:

শিশু টেবিলে এফকে যখন শিশু টেবিলে একটি পিকে (বা শনাক্তকারী) হিসাবে বিবেচনা করা হয় তখনও পিতামাতার সারণীর উল্লেখ করার সাথে একটি সনাক্তকারী সম্পর্ক হ'ল সম্পর্ক

আর একটি উদাহরণ হতে পারে যখন আপনার কাছে কয়েকটি দেশের ডাটাবেসের জন্য আমদানি এবং রফতানি করতে 3 টি টেবিল (আমদানি - পণ্য - দেশ) থাকে

importটেবিল শিশু এই ক্ষেত্র রয়েছে ( product_id) (এফ কে, country_id) (এফ কে, আমদানি পরিমাণ, মূল্য, ইউনিট আমদানি করা, (বায়ু, সমুদ্র) পরিবহন প্রণালী) we may use the (PRODUCT_ID , thecountry_id`) প্রতিটি সনাক্ত করতে আমদানিগুলির সারি "যদি তারা সবাই একই বছরে থাকে" এখানে উভয় কলামগুলি চাইল্ড টেবিলের একটি প্রাথমিক কী রচনা করতে পারে (আমদানি) এবং সেখানে অভিভাবক সারণীগুলি উল্লেখ করে।

দয়া করে আমি খুশি পরিশেষে আমি ধারণা বুঝতে আছি identifying relationshipএবং non identifying relationship, তাই দয়া করে আমাকে বলবেন না আমি এই ভোট আপগুলি সব ভুল সম্পূর্ণরূপে অবৈধ উদাহরণ

হ্যাঁ যুক্তিযুক্তভাবে কোনও বই লেখক ছাড়া লেখা যায় না তবে লেখক ছাড়া একটি বই চিহ্নিত করা যায়, আসলে এটি লেখকের সাথে চিহ্নিত করা যায় না!

আপনি বইয়ের সারি থেকে 100% লেখককে সরাতে পারেন এবং এখনও বইটি সনাক্ত করতে পারেন!


5
আপনি ঠিক বলেছেন, যদি আপনার কাছে কেবল টেবিলের বই এবং লেখক থাকে। সেখানে কোনও সনাক্তকারী সম্পর্ক নেই। তবে আপনি যদি বহু-থেকে-বহু সম্পর্কের প্রতিনিধিত্ব করতে কোনও তৃতীয় টেবিল ব্যবহার করেন তবে third তৃতীয় সারণীর প্রাথমিক কীটিতে দুটি সারণী এবং লেখক সারণি উল্লেখ করে দুটি বিদেশী কী রয়েছে। এই টেবিলের বই এবং লেখক উভয়েরই একটি সনাক্তকারী সম্পর্ক রয়েছে। আমার উদাহরণটি স্ট্যাকওভারফ্লো
প্রশ্নগুলি / 2814469/…

8

অ-সনাক্তকারী সম্পর্ক relationship

অ-সনাক্তকারী সম্পর্কের অর্থ একটি শিশু পিতামাতার সাথে সম্পর্কিত তবে এটি তার নিজের দ্বারা চিহ্নিত করা যেতে পারে।

PERSON    ACCOUNT
======    =======
pk(id)    pk(id)
name      fk(person_id)
          balance

অ্যাকাউন্ট এবং পার্সনের মধ্যে সম্পর্কটি শনাক্ত করা যায় না।

সম্পর্ক চিহ্নিত করা

একটি সনাক্তকারী সম্পর্ক মানে সন্তানের পরিচয় দেওয়ার জন্য পিতামাতার প্রয়োজন। সন্তানের একমাত্র পিতামাতার কারণে বিদ্যমান exists

এর অর্থ হ'ল বিদেশী কীটিও একটি প্রাথমিক কী।

ITEM      LANGUAGE    ITEM_LANG
====      ========    =========
pk(id)    pk(id)      pk(fk(item_id))
name      name        pk(fk(lang_id))
                      name

ITEM_LANG এবং ITEM এর মধ্যে সম্পর্ক চিহ্নিত করা হচ্ছে। এবং ITEM_LANG এবং LANGUAGE এর মধ্যেও।


2
পার্সন এবং অ্যাকাউন্ট কীভাবে শনাক্ত করা যায় না? পার্সন ছাড়াই কীভাবে অ্যাকাউন্টের অস্তিত্ব থাকতে পারে?
MrRobot9

পূর্ববর্তী মন্তব্যের উত্তর নেই কেন? @ মিঃরোবট 9
এএইএম

4

আপনি যদি বিবেচনা করেন যে পিতা-মাতা মুছে ফেলা হচ্ছে তখন শিশু আইটেমটি মুছে ফেলা উচিত, তবে এটি একটি সনাক্তকারী সম্পর্ক।

সন্তানের আইটেমটি যদি পিতামাতার মুছে ফেলা সত্ত্বেও রাখা উচিত, তবে এটি একটি অ-সনাক্তকারী আপত্তি rela

উদাহরণ হিসাবে, আমার প্রশিক্ষণার্থী, প্রশিক্ষণ, ডিপ্লোমা এবং প্রশিক্ষণ সেশন সহ একটি প্রশিক্ষণ ডাটাবেস রয়েছে:

  • প্রশিক্ষণার্থীদের প্রশিক্ষণ সেশনের সাথে একটি সনাক্তকারী সম্পর্ক রয়েছে
  • প্রশিক্ষণ প্রশিক্ষণের সেশনগুলির সাথে একটি সনাক্তকারী সম্পর্ক রাখে
  • তবে প্রশিক্ষণার্থীদের ডিপ্লোমাগুলির সাথে অ-সনাক্তকারী সম্পর্ক রয়েছে

শুধুমাত্র সম্পর্কিত প্রশিক্ষণার্থী, প্রশিক্ষণ বা ডিপ্লোমা মুছে ফেলা হলে কেবল প্রশিক্ষণ সেশনগুলি মুছে ফেলা উচিত।


3

শনাক্তকরণ সম্পর্কিত পুনরায় সম্পর্ক অর্থ শিশু সত্তা পুরোপুরি পিতামাতার সত্তার অস্তিত্বের উপর নির্ভর করে। অ্যাকাউন্ট টেবিল ব্যক্তির টেবিল এবং ব্যক্তিগত অ্যাকাউন্টের উদাহরণ person ব্যক্তি অ্যাকাউন্টের সারণীটি কেবল অ্যাকাউন্ট এবং ব্যক্তির সারণির অস্তিত্ব দ্বারা চিহ্নিত করা হয়।

শনাক্তকরণের সম্পর্কটি হ'ল সন্তানের টেবিলটি পিতামাতার সারণির অস্তিত্বের দ্বারা সনাক্ত করা যায় না উদাহরণস্বরূপ অ্যাকাউন্টটি টাইপ এবং অ্যাকাউন্ট হিসাবে সারণী রয়েছে account অ্যাকাউন্টটি সারণির অস্তিত্বের সাথে অ্যাকাউন্ট অ্যাকাউন্টের সারণি সনাক্ত করা যায় না।


2

নীচের লিঙ্কে ভালভাবে ব্যাখ্যা করার মতো, একটি সনাক্তকারী সম্পর্ক কিছুটা দুর্বল সত্তা টাইপের সম্পর্কের মতো যা তার পিতামাতার সাথে ER ধারণাগত মডেলটিতে রয়েছে। ডেটা মডেলিংয়ের জন্য ইউএমএল স্টাইলের সিএডিগুলি ইআর চিহ্ন বা ধারণাগুলি ব্যবহার করে না এবং সম্পর্কের ধরণগুলি হ'ল: সনাক্তকরণ, অ-সনাক্তকারী এবং অ-নির্দিষ্ট।

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

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

http://docwiki.embarcadero.com/ERStudioDA/XE7/en/Creating_and_Editing_Relationships


2

অভিভাবক থেকে সন্তানের কাছে স্থানান্তরিত বৈশিষ্ট্যগুলি কি 1 টি শিশুকে সনাক্ত করতে সহায়তা করে?

  • যদি হ্যাঁ : সনাক্তকরণ-নির্ভরতা বিদ্যমান, সম্পর্ক সনাক্তকরণ এবং সন্তানের সত্তা "দুর্বল"।
  • যদি তা না হয় : সনাক্তকরণ-নির্ভরতা বিদ্যমান নেই, সম্পর্কটি শনাক্তকরণ নয় এবং শিশু সত্তা "শক্তিশালী"।

নোট করুন যে সনাক্তকরণ-নির্ভরতা অস্তিত্ব-নির্ভরতা বোঝায়, তবে অন্যভাবে নয়। প্রতিটি নন-নুল এফকে অর্থাত্ বাবা-মা ব্যতীত কোনও শিশু থাকতে পারে না, তবে এটি একা সম্পর্কটিকে চিহ্নিত করতে পারে না।

এটির (এবং কয়েকটি উদাহরণ) আরও তথ্যের জন্য, ইআরউইন পদ্ধতিগুলি গাইডের "সম্পর্কগুলি চিহ্নিতকরণ" বিভাগটি দেখুন ।

পিএস আমি বুঝতে পারি যে আমি পার্টিতে (অত্যন্ত) দেরিতে আছি, তবে আমি অনুভব করি যে অন্য উত্তরগুলি পুরোপুরি সঠিক নয় (সনাক্তকরণ-নির্ভরতার পরিবর্তে অস্তিত্ব-নির্ভরতার শর্তে এটি সংজ্ঞায়িত করা), বা কিছুটা সংশোধনযোগ্য। আশা করি এই উত্তরটি আরও স্পষ্টতা প্রদান করে ...


1 সন্তানের এফকে সন্তানের প্রাথমিক কী বা (অ-শুল্কহীন) স্বতন্ত্র সীমাবদ্ধতার একটি অংশ।


1

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

যে নম্বরটি একটি লাইন আইটেম সনাক্ত করে কেবল এটি একটি একক আদেশের প্রসঙ্গে সনাক্ত করে। প্রতিটি ক্রমের প্রথম লাইন আইটেমটি আইটেম নম্বর "1"। একটি লাইন আইটেমের সম্পূর্ণ পরিচয় হ'ল আইটেম নম্বর এবং এটির একটি অংশের ক্রম সংখ্যার সাথে।

অর্ডার এবং লাইন আইটেমগুলির মধ্যে পিতামাতার সন্তানের সম্পর্ক তাই একটি সনাক্তকারী সম্পর্ক। ইআর মডেলিংয়ে একটি ঘনিষ্ঠভাবে সম্পর্কিত ধারণাটি "সাবেন্টিটি" নামে যায়, যেখানে লাইন আইটেমটি ক্রমের একটি subentity। সাধারণত, একটি সাবেন্টিটির সত্তার সাথে বাধ্যতামূলক শিশু-পিতামাতার পরিচয় সম্পর্কিত সম্পর্ক রয়েছে যা এটি অধস্তন।

শাস্ত্রীয় ডাটাবেস ডিজাইনে, লাইন আইটেম সারণির প্রাথমিক কীটি হবে (অর্ডার নাম্বার, আইটেম নাম্বার)। আজকের কিছু ডিজাইনার কোনও আইটেমকে একটি পৃথক আইটেম আইডিআইডি দিতেন, এটি প্রাথমিক কী হিসাবে কাজ করে এবং এটি ডিবিএমএস দ্বারা স্ব-স্বীকৃত হয়। আমি এই ক্ষেত্রে শাস্ত্রীয় নকশা সুপারিশ।


0

ধরা যাক আমাদের সেই টেবিলগুলি রয়েছে:

user
--------
id
name


comments
------------
comment_id
user_id
text

এই দুটি টেবিলের মধ্যে সম্পর্ক সম্পর্ক চিহ্নিত করবে will কারণ, মন্তব্যগুলি কেবল তার মালিকেরই হতে পারে, অন্য ব্যবহারকারীদের নয়। উদাহরণ স্বরূপ. প্রতিটি ব্যবহারকারীর নিজস্ব মন্তব্য রয়েছে এবং ব্যবহারকারী মুছে ফেলা হলে এই ব্যবহারকারীর মন্তব্যগুলিও মুছে ফেলা উচিত।


0

একটি সনাক্তকারী সম্পর্ক দুটি শক্তিশালী সত্তার মধ্যে। অ-সনাক্তকারী সম্পর্ক সর্বদা একটি শক্তিশালী সত্তা এবং একটি দুর্বল সত্তার মধ্যে সম্পর্ক নাও হতে পারে। এমন একটি পরিস্থিতি থাকতে পারে যেখানে একটি শিশু নিজেই একটি প্রাথমিক কী থাকে তবে তার সত্তার অস্তিত্ব তার পিতামাতার সত্তার উপর নির্ভর করে।

উদাহরণস্বরূপ: একজন বিক্রেতার সাথে একটি বই যেখানে একটি বিক্রয়কারী বিক্রয় করছে তার মধ্যে একটি বই বিদ্যমান থাকতে পারে যেখানে বিক্রেতার নিজস্ব প্রাথমিক কী থাকতে পারে তবে একটি বই যখন বিক্রি হচ্ছে তখনই তার সত্তা তৈরি হবে

বিল কারভিনের উপর ভিত্তি করে রেফারেন্স


5
এটি এখানে "শক্তিশালী" এবং "দুর্বল" সত্তা বলতে আপনার অর্থ বোঝাতে সাহায্য করতে পারে।
নৈর্ব্যতা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.