GUID vs liczbowe Id + 1 – co lepsze?

2018-11-12 04:16
0

Tworzę sobie stronę www w asp.net. Dlatego, że dopiero się uczę to proszę o wyrozumiałość.
Jedną z funkcjonalności aplikacji będzie możliwość dodawania komentarzy/notatek w wielu miejscach. Mam więc oddzielną tabelę dla notatek. W każdym miejscu, gdzie może pojawić się notatka/uwaga przechowuję w bazie numer identyfikatora dla notatek. Każda notatka, która ma ten identyfikator będzie wyświetlana w tym konkretnym miejscu.
Problem jest z nadaniem identyfikatora dla notatek, gdyż dla danego miejsca musi być on unikalny (a będzie wiele takich miejsc).

Myślałem więc o zastosowaniu Guid, ale jak trochę o tym poczytałem to się okazuje, że Guid nie gwarantuje unikalności kluczy. Tak, wiem, że prawdopodobieństwo wystąpienia dwóch identycznych Guid-ów jest stosunkowo niskie, ale jednak występuje takie ryzyko.

Rozważam więc stosowanie zwykłego int-a, który miałby wartość ID ostatniego dodanego komentarza/notatki w tabeli +1. Oczywiście to rozwiązanie również ma wadę, bo wymaga ode mnie wydobywania z bazy za każdym razem ostatnio dodanych wartości...
No i teraz pytanie do Was co Wy byście zrobili? Jak to jest z tym Guid-em czy, jeśli będzie on generowany na tej samej maszynie to czy jest ryzyko zdublowania klucza? Od czego to zależy? Czy w Guid są elementy losowe? Czy jeśli dwa Guid-y zostałyby wygenerowane w tym samym czasie na tej samej maszynie to czy mogą mieć ten sam numer? Tak, wiem, że w tym samym czasie nie jest to możliwe, ale chodzi mi o to, czy jeden Guid jest jakoś uzależniony od poprzednio wygenerowanego Guid-a (co w zasadzie zapewniałoby chyba unikalność) czy brak takiego powiązania?

Z góry dzięki za wszelkie informacje i udzieloną pomoc.

edytowany 2x, ostatnio: furious programming, 2018-11-12 16:22
GUID to akronim – pisze się dużymi literami. - furious programming 2018-11-12 16:22

Pozostało 580 znaków

2018-11-12 06:49
2

Identity, serial, sequence, auto_increment. W zależności od bazy.

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0