..


Sponzorované odkazy

Duplicitné / Kopírovanie záznamu v MySQL

Článok napísal Max Bossi

Za určitých okolností sa môže stať, že je potrebné, v rámci webovej aplikácie, alebo jednoducho správu dát v našej firemnej databáze MySQL, vytvárať kópie celých záznamov alebo ich častí.

Zoberme si príklad. Povedzme, že musíme zvládnuť databázy e-commerce a môže byť nutné skopírovať list vložiť novú s rovnakými vlastnosťami ako existujúce. Predpokladajme napríklad betón, nutnosti zadanie ako produkt našej hypotetické elektronický obchod v produkte "16GB iPod Nano" vo farbe "Silver", karta sa rovnaký produkt už k dispozícii "iPod Nano 16 GB" farba "biela" .

Predpokladajme, že iPod rady výrobkov sú zaradené v tabuľke lettori_mp3 v nasledujúcej štruktúre:

  • ID
  • značka
  • model
  • popis
  • farba
  • cena
Predpokladajme, že produkt, ktorý chcete kopírovať ("iPod Nano 16GB" farba "biela"), má číslo 123.

Ak chcete vytvoriť kópiu záznamu budeme používať tento dotaz:






 INSERT INTO lettori_mp3

 





 SELECT * FROM WHERE id = 123 lettori_mp3;



Týmto spôsobom vytvoríme zaznamenať rovnaké a my sa len zmeniť pole "ID" a "farebných" ručným zadaním hodnôt pre nový záznam.

Uvedomte si však, že ak je pole ID nášho stola bol stanovený ako číselnú hodnotu auto_increment s jedinečným výhľadom na dotaz vráti chybu (pretože nemôžete mať dva rovnaké identifikátory !!!). V tomto prípade by sme mali zvoliť pole, ktoré chcete skopírovať okrem ID oblasti:






 INSERT INTO lettori_mp3 (značka, model, opis, farba, cena)







 SELECT značka, model, popis, "striebrom", cena lettori_mp3 Odkiaľ id = 123;



Ako môžete vidieť, sme skopírovali všetky polia v zázname, s výnimkou poľa "ID" (z dôvodu uvedené vyššie).
Možno ste si všimli, aj to, že sme nahradili v SELECT pole "farba" (v origináli záznam farba je "biela") na hodnotu vložiť do nového záznamu ("Silver").

Et voila. To je všetko.
Jednoducho sme si urobiť pekný SELECT na našom stole, či nový rekord bol zadaný správne.

Je to sotva Treba podotknúť, konečne, že je možné robiť kópie časti alebo všetkých záznamov z rôznych tabuliek tiež (stačí zadať správne názvy polí pre kopírovanie a uistite sa, že akceptujú rovnaké typy dát).

V rovnakej kategórii ...
E-Learning
MS Access (Advanced) MS Access (Advanced)
Naučte sa vytvárať a spravovať databázy jednoducho a rýchlo. Od 29 €.
MySQL (kurz) MySQL (kurz)
Správa open-source databázy. Od 39 €.
SQL a databáz (kurz) SQL a databáz (kurz)
Vytváranie a správa relačnej databázy. Od 39 €.
Sponzorované odkazy