![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 7 Dołączył: 27.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Joł
mam pytanie bo nie jestem pewien na 100%, przykladowo: - rozpoczynam tranzakcje - robie jakis tam insert - pobieram ostatni id rekordu w tej tabeli (select * from curval('seq_id')) - commit czy tranzakcja zapewnia ze zwrocony id bedzie na 100% indeksem rekordu ktory wstawilem? czy powiniuennem dodac locka na poczatku tranzakcji: LOCK TABLE tabela IN SHARE ROW EXCLUSIVE MODE ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 68 Pomógł: 0 Dołączył: 21.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
z transakcji
begin insert into a (a ) values (1); select currval(a_id); commit; i select zwróci "id" ostanio wstawiany record gdzie id tabeli a to pole pobierające wartość z seqwencji "a_id" i to jest prawdą. Na tomiast tutaj bez transakcji już tak być nie musi? Czy mam rację ? insert into a (a ) values (1); select currval(a_id); |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 15:31 |