..


Link-uri sponsorizate

Duplicat / Copy o înregistrare în MySQL

Articol scris de Max Bossi

În anumite circumstanţe, se poate întâmpla să aibă nevoie, în termen de o aplicatie web sau pur şi simplu date de conducere in compania noastra baza de date MySQL, pentru a face copii de înregistrări întregi sau porţiuni din acestea.

Să luăm un exemplu. Să presupunem că avem de a gestiona baza de date a unui mesaj e-commerce si ar putea avea nevoie să copiaţi o coală pentru a insera o nouă cu aceleaşi caracteristici ca unul deja existent. Să presupunem, de exemplu beton, a fi nevoie să introduceţi ca un produs al nostru magazin de electronice ipotetice în produsul "iPod nano 16GB" într-o culoare "Silver", carte cu acelaşi produs la deja disponibile "16GB iPod nano" culoarea "albă" .

Să presupunem că familia iPod-ul de produse sunt clasificate în tabelul lettori_mp3 structurată după cum urmează:

  • ID-ul
  • marca
  • model
  • descriere
  • culoare
  • preţ
Să presupunem că produsul pe care doriţi să le copiaţi ("iPod nano 16GB" de culoare "Alb") are ID-ul 123.

Pentru a face o copie a înregistrării vom folosi această interogare:






 INSERT INTO lettori_mp3

 





 SELECT * FROM WHERE id = 123 lettori_mp3;



În acest fel vom crea o înregistrare la fel şi ne va schimba doar câmpurile "ID-ul" şi "culoare", cu precizarea manual valorile pentru nou record.

Reţineţi, totuşi, că în cazul în care câmpul ID din tabelul nostru a fost stabilită ca o valoare numerică cu vedere auto_increment unică asupra interogarea va returna o eroare (pentru că nu poţi avea doi identificatori identice !!!). În acest caz, ar trebui să selectaţi câmpurile pe care doriţi să copiaţi cu excepţia câmpului ID-ul:






 INSERT INTO lettori_mp3 (marcă, model, descriere, culoare, pret)







 SELECT marcă, model, descriere, "Silver", lettori_mp3 preţ de unde id = 123;



Dupa cum puteti vedea am copiat toate câmpurile din înregistrare, cu excepţia câmpul "ID-ul" (pentru motivul menţionat mai sus).
Este posibil să fi observat, de asemenea, că am substituit în domeniul SELECT "culoare" (în înregistrarea originală de culoare este "albă"), valoarea de a insera în nou record ("argint").

Et voila. Ai terminat.
Trebuie doar să facă un frumos SELECT pe masa noastră de a vedea dacă nou record a fost introdus corect.

Este greu este necesar să se arate, în cele din urmă, că puteţi face copii de toate sau o parte din înregistrările din tabele diferite, de asemenea, (este suficient să se precizeze numele corect de câmpuri pentru a copia şi asiguraţi-vă că acestea acceptă aceleaşi tipuri de date).

În aceeaşi categorie ...
E-Learning
MS Access (Avansat) MS Access (Avansat)
Aflaţi cum să creaţi şi să gestionaţi baze de date rapid şi uşor. Incepand de la 29 €.
MySQL (Curs) MySQL (Curs)
De gestionare a bazei de date open-source. De la 39 €.
SQL si baze de date (Curs) SQL si baze de date (Curs)
Crearea şi gestionarea bazelor de date relaţionale. De la 39 €.
Link-uri sponsorizate