Autor Zpráva
Sylar
Profil
Zdravím,
tahám data do databáze z xml a potřebuji udělat to, že pokud položka z xml již v databázi je, chci jí updatovat, pokud není vložím ji novou. Těch položek je velké množství a proto se mi nechce dělat to, že abych zjistil zda-li položka v databázi již je, musím to zjistit SELECTEM. Chci tedy provést rovnou dotaz UPDATE s tím, že buď položka v databázi je, pak se updatuje nebo není, pak se neupdatuje, ale v tomto případě potřebuji NĚJAK zjistit, zda-li byla položka opravdu updatována, abych pak mohl příp. provést INSERT nové položky. Dokáži zjistit z toho dotazu UPDATE zda-li se nějaká položka v databázi opravdu updatovala?
Tori
Profil
Sylar:
Místo UPDATE + INSERT využijte unikátní klíč a buď INSERT ... ON DUPLICATE KEY UPDATE anebo REPLACE (každé se chová trochu jinak, koukněte do manuálu, co pro vás bude vhodnější). Jinak počet změněných řádků se např. v PHP zjistí funkcí mysql_affected_rows
Sylar
Profil
Tori:
díky, on duplicate key update je přesně to co potřebuji ...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: