natural key, surrogate key, foreighn key ?


0
Четох на няколко места в интернет да не използваме foreighn key защо ?

И каква е основната разлика между :
natural key и surrogate key ? Четох една темичка по въпроса http://www.databasejournal.com/features/mssql/article.php/3922066/SQL-Server-Natural-Key-Verses-Surrogate-Key.htm но няма примери и не мога да си го преставя



Отговори



2
Natural е примерно егн-то ти, то е от реалния свят. Когато имаш таблица с данни, за които няма идентификатор с уникални стойности от реалния живот, правиш изкуствени (surrogate).



0

За и против foreign key constraint: http://stackoverflow.com/a/83393

За natural vs surrogate key, krasimir.krustev86 ти е обяснил. В http://en.wikipedia.org/wiki/Natural_key има още по въпроса, вкл плюсовете и минусите на подхода. Вж http://en.wikipedia.org/wiki/Surrogate_key#Surrogates_in_practice за примери за сурогати.


от staafl (5770 точки)


0
Нещо за super key ще ми поясните ли ?



0
просто набор от колони чиито стойности взети заедно са уникални ... примерно можеш да имаш две коли със съвпадащи модел и цвят, но може да се приеме че няма две със съвпадащ модел + цвят + телефон на собственика + дата на производство. Ако искаш да си напълно стриктен, трябва да включиш комбинация като държава + рег. номер, за която по дефиниция се предполага че няма повторение.

от staafl (5770 точки)

0
Благодаря :-)