Спасылачныя цэласнасць з'яўляецца асаблівасцю базы дадзеных у рэляцыйных сістэм кіравання базамі дадзеных. Гэта гарантуе, што адносіны паміж табліцамі ў базе дадзеных застаюцца дакладнымі шляхам прымянення абмежаванняў для прадухілення карыстальнікаў або прыкладанняў ад уводу недакладных дадзеных або паказвае на дадзеныя, якія не існуюць.
Базы дадзеных выкарыстоўваюць табліцы для арганізацыі інфармацыі , якую яны ўтрымліваюць. Яны падобныя на табліцы, такія як Excel, але значна больш здольным для прасунутых карыстальнікаў. Базы дадзеных функцыянуюць з выкарыстаннем першасных ключоў і знешніх ключоў, якія падтрымліваюць сувязь паміж табліцамі.
першасны ключ
Першасны ключ табліцы базы даных уяўляе сабой унікальны ідэнтыфікатар , прысвойваны кожнай запісу. Кожная табліца будзе мець адзін або некалькі слупкоў, прызначаныя ў якасці першаснага ключа. Нумар сацыяльнага страхавання можа быць першасным ключом для базы дадзеных спісу супрацоўнікаў, таму што кожны нумар сацыяльнага страхавання з'яўляецца унікальным.
Тым не менш, з-за меркаванняў прыватнасці, прызначаны нумар кампаніі ID з'яўляецца лепшым выбарам для працы ў якасці першаснага ключа для супрацоўнікаў. Некаторыя праграмнае забеспячэнне базы дадзеных - такія, як Microsoft Access - прызначае першасны ключ аўтаматычна, але выпадковы ключ не мае ніякага рэальнага сэнсу. Лепш выкарыстоўваць ключ з сэнсам запісу. Самы просты спосаб забеспячэння спасылачныя цэласнасці, каб не дапусціць змяненняў у якасці першаснага ключа.
знешні ключ
Знешні ключ з'яўляецца ідэнтыфікатарам ў табліцы , які супадае з першасным ключом іншы табліцы. Знешні ключ стварае адносіны з другога табліцай, і спасылачныя цэласнасць ставіцца да адносін паміж гэтымі табліцамі.
Калі адна табліца мае знешні ключ іншы табліцы, канцэпцыя спасылачныя цэласнасці сцвярджае, што вы не можаце дадаць запіс у табліцу, якая змяшчае знешні ключ, калі не існуе адпаведны запiс у звязанай табліцы. Яна таксама ўключае ў сябе метады, вядомыя як каскадныя абнаўлення і каскадныя выдалення, якія гарантуюць, што змены, унесеныя ў звязанай табліцы адлюстраваны ў першаснай табліцы.
Прыклад спасылачныя цэласнасці правілаў
Разгледзім сітуацыю, калі ў вас ёсць дзве табліцы: Супрацоўнікі і менеджэры. Табліца Служачыя мае атрыбут знешняга ключа пад назвай ManagedBy, які паказвае на запіс для мэнэджэра кожнага супрацоўніка ў табліцы менеджэраў. Спасылачныя цэласнасць забяспечвае выкананне наступных трох правілаў:
- Вы не можаце дадаць запіс у табліцу супрацоўнікаў, калі ManagedBy ня атрыбут паказвае на правільны запіс у табліцы менеджэраў. Спасылачныя цэласнасць прадухіляе ўстаўку няправільных дэталяў у табліцу. Любая аперацыя, якая не задавальняе правілу спасылачныя цэласнасці не ўдаецца.
- Калі першасны ключ для запісу ў зменах Мэнэджараў табліцы, усе адпаведныя запісы ў табліцы супрацоўнікаў мадыфікуюцца з дапамогай абнаўлення каскаднага.
- Калі запіс у табліцы мэнэджараў выдаляюцца, усе адпаведныя запісы ў табліцы супрацоўнікаў выдаляюцца з дапамогай каскаднага выдалення.
Перавагі спасылачныя цэласнасці Абмежаванні
Выкарыстанне рэляцыйнай СКБД сістэмы з спасылачныя цэласнасцю мае шэраг пераваг:
- Прадухіляе пранікненне дублікатаў дадзеных.
- Прадухіляе адну табліцу з паказваюць на неіснуючыя поля ў іншай табліцы.
- Гарантаванае адпаведнасць паміж табліцамі «» мелі партнёра.
- Прадухіляе выдаленне запісу, якая ўтрымлівае значэнне, на якую спасылаецца знешні ключ у іншы табліцы.
- Прадухіляе даданне запісы ў табліцу, якая змяшчае знешні ключ, калі не з'яўляецца першасным ключом у звязанай табліцы.