Szukam technik projektowania, aby osiągnąć następujące cele:
3-częściowy numer seryjny, który jest generowany po wprowadzeniu rekordu. Przykład formatu: 25-001-14
Numer służy do śledzenia rocznych zapisów z różnych lokalizacji.
Pierwsza część określa lokalizację rekorduw powiązaniu z tym byłby to wkład użytkownika podczas tworzenia rekordu. Druga część to numer rekordu, który chciałbym, aby był generowany automatycznie, ale musi być sekwencyjny i osobny dla każdej lokalizacji i musi być resetowany co roku. Trzecia część to dwucyfrowa liczba w roku, w którym został utworzony rekord. Chciałbym, aby było to generowane automatycznie, jeśli to możliwe. Uwaga: obecnie nie martwię się o to, kiedy cykl się powraca i napotykam zbędne problemy z danymi.
Myślę, że chciałbym, aby rekordy były przechowywane w wielu tabelach oddzielonych lokalizacją, jeśli to by pomogło!
Wszelkie pomysły będą mile widziane.
Odpowiedzi:
0 dla odpowiedzi № 1Myślę, że użyłbym 3 kluczowych pól - po jednym polu każdegodla lokalizacji, rekordu i roku. Pola lokalizacji i roku zostaną utworzone, gdy otrzymasz dane wejściowe do utworzenia nowych rekordów. Ustawiłbym zapytanie, aby znaleźć ostatni numer rekordu użyty przez lokalizację i rok, i użyć tego zapytania, aby przypisać nowy numer rekordu podczas tworzenia nowego rekordu. Kluczem, który opisałeś, jest połączenie 3 pól.
Z kluczowym polem dla lokalizacji, oddzielne tabelenie są konieczne, chyba że jest to przydatne z innych powodów. Prawdopodobnie użyłbym tylko jednej tabeli - zawsze możesz filtrować rekordy według lokalizacji w dowolnym momencie.