Già che ci sono provo a chiedere un'ultima cosa.
ho quest'altro esercizio:
Ora ho provato ad eseguirla con il programma consigliato (finalmente...) e mi da come risultato 100. Cioè mi da 100 se faccio così:codice:Data la tabella Conti(Id,Saldo), inizialmente vuota e le transazioni T1 INSERT INTO Conti VALUES (1, 100); INSERT INTO Conti VALUES (2, 100); SELECT AVG(Saldo) FROM Conti; T2 INSERT INTO Conti VALUES (3, 400); SELECT AVG(Saldo) FROM Conti; fornire i possibili valori ritornati da T2 (con livello di serializzabilit`a massimo).
E' giusto?codice:START TRANSACTION; INSERT INTO Conti VALUES (1, 100); INSERT INTO Conti VALUES (2, 100); SELECT AVG(Saldo) FROM Conti; COMMIT; START TRANSACTION; SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; INSERT INTO Conti VALUES (3, 400); SELECT AVG(Saldo) FROM Conti INTO media; COMMIT;
Questo è dovuto al fatto che il livello di isolamente è serializable quindi dovrei attendere che T1 rilasci la tabella per poter eseguire? Però è strano perchè i valori vengono inseriti tutti e tre nel database

Rispondi quotando