SQL - (5) Entities, Instances, Attributes සහ Identifiers


Entities, Instances, Attributes සහ Identifiers

මෙම ලිපියේ දි ඔබට.
  • Entityයනු කුමක්දැයි හඳුනාගැනිමටත්,
  • instanceහඳුනාගැනිමටත් entity සහ instance අතර ඇති සබඳතාවය හඳුනාගැනිමටත්,
  • entityඑකකට attributesනම් කිරීමටත් ඒවා විස්තර කිරිමටත්,
  • attribute එකක් සහ එහි වටිනාකම් පිළිබඳවත්,
  • mandatory සහoptional attributes පිළිබඳවත්,
  • volatile සහ nonvolatile attributes පිළිබඳවත්,
  • entity එකක ඇති unique identifier (UID) එක සොයාගන්නා ආකාරය පිළිබඳවත් සාකච්ඡා කිරිමට බලාපොරොත්තු වෙනවා.


නිරන්තරයෙන් වෙනස් වන නිසි පරිදි සංවිධානය කිරීමෙන් හා වර්ගීකරණය කිරීමෙන් ප්‍රයෝජනවත් ප්‍රතිදානයක් ලබා ගැනීමට හැකි වෙයි. මෙ වන විට අප සතු තාක්ෂණය අති විශාල කරුණු නැතිනම් දත්ත නිවැරදි සැකැස්මකට හා පිළිවෙලකට ගබඩා කර තබා ගැනීමට පහසුකමු සපයා දෙයි.

අපි entities පිළිබදව ඉගෙන ගැනීම වැදගත් වන්නේ එය දත්ත ගබඩා කිරීමේ ප්‍රමුඛ සාධකය වන බැවිනි.

නිදර්ශන 01 : Entities යනු

පාසලක් සඳහා දත්ත සමුදායක් සැදීමේ දී පැවතිය යුතු අවම දත්තයන් වන්නේ,
STUDENT, TEACHER, COURSE, ROOM, GRADE යනාදියයි. මේවා entities ලෙස හඳුන්වාදීමට පුළුවන.

Entity එකක පවත්නා සුවිශේෂිතා කීපයකි,
  1. එමගින් ව්‍යාපාරයක දත්ත කාණ්ඩායක් හඳුන්වයි.
  2. එක හා සමාන දත්ත ලයිස්තුවකට ලබා දුන් නමක් ලෙස හැඳින්විය හැක.
  3. සාමාන්‍යයෙන් මෙය නාම පදයක් වශයෙන් යෙදෙයි.

සෑම Entity එකකටම instances පවතී. ANIMAL කියන Entity එකේ instance එකක් තමයි Dog කියන්නේ. එයට අමතරව තවත් instances මෙහි පවතින්නත් පුළුවන්. නිදසුන් කීපයක් කියනවා නම් Cat, Elephant, Rabbit පෙන්නා දීමට පුළුවන්.

එක් අවස්ථාවක instance එකක් තවත් අවස්ථාවක entity එකක් වෙන්නත් පුළුවන්. නිදර්ශනක් මගින් පෙන්නා දුන්නොත් ANIMAL කියන entity එකේ Dog කියන්නේ instance එකක් කියලා අපි මීට පෙර දී සාකච්ඡා කළා. නමුත් සත්වපාලන ව්‍යාපාරයකදී DOG යන්න entity එකක් බවට පත් වෙලා Pomanarian, Alsasion වගේ බල්ලන් වර්ග instance බවට පත් වීමට පුළුවන්. ඒ අනුව භාවිතයේ දී අපි මේ හැම දෙයක් ගැනම සැලකිලිමත් වන්න ඕනි.

ඒ අනුව Entity එකක්
  1. පුද්ගයෙක් (PERSON ) හෝ නිෂ්පාදනයක් (PRODUCT ) වන්නට පුළුවන්.
  2. හැකියාවක් (SKILL LEVEL ) වන්නටත් පුළුවන්,
  3. කිසියම් event එකක් වෙන්නටත් පුළුවන්.
නිදර්ශන 02 : attributes යනු

Attributes පිළිබඳව අවබෝධ කර ගැනීම වැදගත් වනුයේ එයින් entities තව දුරටත් විස්තර කරන බැවිනි. ඒ අනුව දත්ත සමුදායට කවරාකාරයේ දත්ත එක්කාසු කර ගත යුතුද යන්න අවබෝධ කර ගැනීමට උපකාරී වෙයි. ඉහත නිදර්ශනයට අනුව නම් STUDENT කියන entity එකෙහි attributes වන්නේ Student Name, Student Age, Student Eddress යනාදියයි.

ඒ අනුව attribute එකක් entity එක,
  • විස්තර කරනු ලබනවා
  • ප්‍රමාණය කරනවා
  • යෝග්‍යතාව ලබා දෙනවා
  • වර්ග කරනවා
  • විශේෂණය කරනවා
යනාදී වශයෙන් හඳුන්වාදීමක් කිරීමට පුළුවන්. එසේම අප මතක තබා ගත යුතු වැදගත්ම කාරණය වන්නේ attribute එකක වටිනාකම සැම විටම එක් අගයක් පෙන්නුම් කරයි.

පහත දැක්වෙනුයේ ENTITIES හා ATTRIBUTES පෙන්නුම් කර වගුවකි.


සෑම Attribute එකකටම වටිනාකමක් තියෙනවා. එම වටිනාකම් data types නැතිනම් formats කියලා හඳුන්වනවා. මේ data type s සඳහා නිදර්ශන කීපයක්. number, character string, date, image, sound එකක් වෙන්න පුළුවන්.

Attributes වල අපට විවිධ විශේෂතා හඳුනාගන්න පුළුවන්. එනම්,
  • මේවා data types ලෙස String, number, date විවිධ වීමට පුළුවන්.
  • හැම විටම එක් අගයක් නිරූපණය කරයි. ඒ නිසා ඒවා single-valued ලෙස හඳුන්වයි.
  • සෑම විටම අගය වෙනස් වීම් වලට භාජනය වෙයි නම් එය volatile attributes ලෙස හඳුන්වයි.
  • අගය වෙනස් වීම බොහෝම කලාතුරකින් සිදු වන්නක් නම් (order date එකක් වැනි) එය nonvolatile attributes ලෙස හඳුන්වයි. යම් අවස්ථාවකදී අපට තෝරාගැනීමක් කිරීමට සිදු වුවහොත් එතනදී අපි තෝරා ගත යුත්තේ nonvolatile attributes එකයි. නිදර්ශනයක් ලෙස වයස හෝ උපන් දිනය තෝරාගැනීමට ඇත්නම් අප තෝරා ගත යුත්තේ උපන්දිනයයි.
  • සමහර attributes සඳහා වටිනාකමක් ලබා දීම අත්‍යාවශ්‍ය වේ. හිස්ව තැබීමට නොහැකියි. නිදර්ශනයක් ලෙස ව්‍යාපාරයක දී name යන්න අත්‍යාවශ්‍යය. මෙවැනි අත්‍යාවශ්‍ය attributes හැඳින්වනුයේ mandatory attributes ලෙසයි.
  • ඒ ආකාරයට අත්‍යාවශය නොවන හිස්ව තැබිය හැකි attributes (නිදර්ශනයක් ලෙස දුරකථන අංකය වැනි) optional attributes ලෙස හදුන්වයි.

නිදර්ශන 03 : unique identifier (UID) යනු

දත්ත එකිනෙක සුවිශේෂි ආකාරයට වෙන්කර දැක්වීම මෙමගින් සිදු කරනු ලබන කාර්යයි. මෙය දත්ත සමුදායක දී තිබිය යුතු වැදගත්ම ලක්ෂණයක් ලෙස පෙන්නා දීමට පුළුවන. අපගේ ඉහත උදාහරණයේ දී සෑම සිසුවෙකුම එකිනෙකාගෙන් වෙන් වෙන්ව හදුනාගැනීමට හැකියාවක් දත්ත සමුදාය තුල දී සකස් කල යුතුයි. මෙන්න මෙය unique identifier ලෙස හඳුන්වාදීමට පුළුවන්.

1 comment:

Hit Man said...

thx ayemath sql patan gatata,,,,,,,,,,