MSSQL, zachowanie sie transakcji
Adam Klobukowski - 17-01-2006 10:53
MSSQL, zachowanie sie transakcji
Witam
Dane: MSSQL Server
Mam nastepującą sytuację:
1. Połączenie P1 transakcyjne dodające wiersze (insert) do tabeli A. Poziom izolacji njanizszy mozliwy.
2. Polaczenie P2 z SELECTem z tabeli A, i dodajacej wiersze do tabeli B
3. Tabela B jest powiązana kluczem obcym B.AID z tabelą A.
Oba działają na tej samej tabeli. Załóżmy następująco:
1. P1 dodaje wiersze do A, P2 w tym samym czasie robi SLECT with nolock z A i dodaje wiersze do B (kazdy wiersz B zawiera powiazanie do A).
2. P1 sie rollbackuje.
Co się dzieje z danymi w P2?
-- Semper Fidelis
Adam Klobukowski atari@gabo.pl
Krzysztof Raczkowski - 17-01-2006 10:53
Adam Klobukowski wrote: > Witam > > Dane: MSSQL Server > > Mam nastepującą sytuację: > > 1. Połączenie P1 transakcyjne dodające wiersze (insert) do tabeli A. > Poziom izolacji njanizszy mozliwy. > > 2. Polaczenie P2 z SELECTem z tabeli A, i dodajacej wiersze do tabeli B > > 3. Tabela B jest powiązana kluczem obcym B.AID z tabelą A. > > Oba działają na tej samej tabeli. Załóżmy następująco: > > 1. P1 dodaje wiersze do A, P2 w tym samym czasie robi SLECT with nolock > z A i dodaje wiersze do B (kazdy wiersz B zawiera powiazanie do A). > > 2. P1 sie rollbackuje. > > Co się dzieje z danymi w P2? >
Stawiam na to że P2 się nie uda, co prawda select się wykona (nolock) ale insert już nie bo na p1 będzie transakcja.
Strzelam - nie testowałem - ale to chyba logiczne jeżeli baza ma zachować spójność.
Po za tym czemu sam tego nie sprawdzisz - przecież taki eksperyment jest trywialny do wykonania ....
-- Pozdrawiam Krzysztof Raczkowski
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Zdalny =?ISO-8859-2?Q?dost=EAp_do_MSSQL_bez_zarz=B1dzani?==?ISO-8859-2?Q?a?=
[MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?=
[MSSQL 2k] - jak =?ISO-8859-2?Q?pod=B3=B1czy=E6_serwer_na_?==?ISO-8859-2?Q?porcie_innym_ni=BF_1433=3F?=
MSSQL Express czy Oracle Express
MSSQL 2005 i uruchamianie procedury o =?ISO-8859-2?Q?okre=B6lone?==?ISO-8859-2?Q?j_godzinie?=
[MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?=
[MSSQL 2000] =?ISO-8859-2?Q?wywo=B3anie_procesu_z_poziomu_?==?ISO-8859-2?Q?job=27a?=
[MSSQL 2K] =?ISO-8859-2?Q?Wp=B3yw_ustawie=F1_regionalnych_?==?ISO-8859-2?Q?serwera_na_zapytania?=
Pobierananie danych z innej bazy danych w MSSQL
Migracja MSSQL 2005 CTP na 2005 Express
zanotowane.pldoc.pisz.plpdf.pisz.plfelgiuzywane.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|