Databáze > MySQL
Firedac Query nezobrazí aktualizovaná data
rholecek:
To plně chápu, ale mám např. tento stav:
1. PC:
Query: SELECT * FROM zapujcka WHERE vraceno = 'N' a vybere mi to všechny dosud nevrácené věci
2. PC:
start transaction;
UPDATE zapujcka SET vraceno = 'A' WHERE id_zapujka = 10;
commit; (že proběhl commit mám potvrzený z logu na serveru i kontrolním selectem na serveru)
Tak po téhle operaci by první PC při opětovném spuštění SQLka neměl zobrazit řádek s ID = 10. Bohužel stále ale zobrazuje řádek s ID = 10, i když je už v DB vraceno = 'A'. Takže je otázkou, kde hledat zakopaného psa - proč se aplikace nedozví o změně dat - je to chyba aplikace, mysql.dll nebo serveru?
Proto ta volba xiDirtyread a snad se mi to podaří v budoucnu opravit.
vandrovnik:
Nevím, jestli to funguje i pro MySQL, ale třeba na Firebirdu by tahle situace mohla vzniknout tím, že se pro čtení z databáze použije transakce typu "snapshot" a pro znovu-načtení dat se nezahájí nová transakce.
Navigace
[0] Seznam témat
[*] Předchozí strana
Přejít na plnou verzi