mySQL podmienka pre insert a update

Programovacie jazyky, rady, poradňa...
weroro
Flash coder
Flash coder
Používateľov profilový obrázok
Príspevky: 3206
Registrovaný: 14 feb 2009, 22:34
Bydlisko: Bratislava
Kontaktovať používateľa:

mySQL podmienka pre insert a update

Príspevok od používateľa weroro »

Ahoj,
viete prosím poradiť ako vyskladať SQL dopyt tak, aby mi buď updatol záznam alebo ak záznam neexistuje, tak vytvorí nový?
Tu na fóre som našiel iba toto http://www.hojko.com/programovanie-f51.html, avšak som v tom nenašiel to čo potrebujem.
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 8219
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: mySQL podmienka pre insert a update

Príspevok od používateľa harrison314 »

bud stored procedurov,
alebo na dva dopyty, pri prvom zistis ci zaznam existuje a s druhym bus insertnes alebu updatnes,
pred asi rokom som hladal na tento rpoblem riesenie ale ine som nevygooglil
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: mySQL podmienka pre insert a update

Príspevok od používateľa audiotrack »

ono dosť záleží aj od toho dopytu a tabuľky. Ak je to full insert tak môžeš použiť on exist prípadne cez replace. Ak nerobíš full insert a spoliehaš sa na autoincrement PK tak jedine cez dva dopyty kedy v prvom zistíš, a v druhom updatneš/insertneš
manager666
Star
Star
Používateľov profilový obrázok
Príspevky: 642
Registrovaný: 12 aug 2007, 13:29

Re: mySQL podmienka pre insert a update

Príspevok od používateľa manager666 »

MERGE (TSQL, PLSQL) je to prave orechove. :wink:
weroro
Flash coder
Flash coder
Používateľov profilový obrázok
Príspevky: 3206
Registrovaný: 14 feb 2009, 22:34
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: mySQL podmienka pre insert a update

Príspevok od používateľa weroro »

Vďaka. Nakoniec som sa uchýlil k riešeniu, ktoré nevyužíva žiadne podmienky. Proste zmažem komplet všetky záznamy a potom ich znovu vytvorím. Lepšie sa mi v tom orientuje, ale bude to pomalé ako fras.
S-player
Light Star
Light Star
Príspevky: 277
Registrovaný: 23 júl 2011, 22:30

Re: mySQL podmienka pre insert a update

Príspevok od používateľa S-player »

Už je možno neskoro no čo ,ak by si si spravil nejakú funkciu do ktorej by si predával ID riadku, meno tabuľky... (Neviem čo potrebuješ zistiť) a mohlo by to vyzerať nejako takto...

Kód: Vybrať všetko

If(existsRow($id))
   // update
else
  // create
Malo by to byť o niečo krajšie...
Napísať odpoveď