Dobrý den,
mohl by mi někdo prosím poradit s tímto problémem? Potřeboval bych aktualizovat data načtena pomocí ADOQuery do DBGridu dotazem:
[code]
Select * from Zakazky z left join Vyrobky v on (v.id_vyrobky=z.vyrobky_id ) WHERE objednavka_id='+IntToStr(id)+' order by poradi_zakazky ASC;
[/code]
Problém je ten, že chci aktualizovat jen ty záznamy z tabulky Zakazky. Ten JOIN je tam pouze kvůli načtení názvu výrobku z tabulky Vyrobky. Zkoušel jsem vyvolat klasický SQL dotaz
[code]
"update Zakazky set vyrobky_id ='+inttostr(idv)+' where id_zakazky='+inttostr(ds.FieldByName('id_zakazky').Value)+''
[/code]
kde idv je id vyrobku a ds.FieldByName('id_zakazky').Value by mělo být id zakázky upravovaného záznamu. Toto jsem se snažil volat u ADOQuery onBeforePost(), ale házelo mi to chybu "Řádek nelze nalézt a aktualizovat. Pravděpodobně byly od posledního čtení změněny některé hodnoty." Nevíte prosím co s tím? Nemůžu se pohnout dál. Moc díky za odpověď.
Fórum › Delphi
ADO - aktualizace dat spojených tabulek
Tak jsem to nakonec vyřešil šalamounsky, ale funguje to :-)
U ADOQuery jsem nastavil LockType na ltBatchOptimistic, takže záznamy mohu v DBGridu vesele upravovat. V momentě, kdy chci záznamy uložit, vyvolám SQL Update ..., nakonec provedu requery, aby se mi změna projevila i v gridu, a je to....
Díky všem:-)
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 10 hostů
Podobná vlákna
Automatická aktualizace dat — založil Shark
Aktualizace dat z db v JTable — založil Rikimara
Aktualizace dat PHP pomocí JQuery — založil omorok
Výběr a spojení dat z více tabulek — založil GRIZLY
MVC výpis dat z více tabulek — založil hajnis