mikes
24.06.2004, 09:54:14
mam takie pytanko
administruje baza psql przez pgadminII
w bazie mam 4 tabele, kazda z nich zawiera takie same pola (tworzone byly przez import pol z tabeli matki) m.in. ma pole o nazwie "id" typu serial chcialbym by byl to licznik rekordow co jasne
ale co ciekawe zapisy do roznych tabel powoduja wzrost wartosci id ale globalnie
ja chcialbym za dla kazdej tabeli numerowal osobno id
jak to ustawic? widze cos takiego jak sequences w panelu pgadmina czy to to i jak to ustawic?
carramba
7.07.2004, 13:38:55
masz źle zaprojektowaną bazę danych prawdopodobonie,
każda tabla z wartością id = SERIAL; powinna mieć utworzoną
osobną sekwencję i tak dla przykładu jeśli masz tabelę :
demo_grupy - w której jest pole id SERIAL;
powinna być utworzona sekwencja :
demo_grupy_id_seq - w której są przechowywane wartości dla seriala
sekwencje dla serial są tworzone automatycznie musiałeś
coś zrobić źle i prawdopobnie wszystkie twoje 4 tabele korzystają
z tej samej sekwencji. Prawdopodobnie wynika to z faktu że
tabele mają takie same nazwy możesz utworzyć własne definicje
sekwencji dla każdego pola - poczytaj manual o CREATE SEQUENCE.