..


Sponsede Lenker

Dupliser / Copy en plate med MySQL

Artikkel skrevet av Max Bossi

Under visse omstendigheter kan det skje har behov, innenfor en web-applikasjon eller i enkel administrasjon av data i vår MySQL database selskap, for å lage kopier av hele poster eller deler av dem.

La oss ta et eksempel. La oss si at vi har for å administrere databasen i en e-handel og kan trenge å kopiere et produkt å legge inn et nytt med de samme egenskaper som allerede er til stede. Anta, for å ta et konkret eksempel, for å sette inn som et produkt av vår hypotetiske elektronikk lagre produktet "iPod Nano 16GB" farge "sølv"-kort med det samme produktet til den allerede tilgjengelig "iPod Nano 16GB" farge "White" .

Anta at produktene av iPod-familien er klassifisert i tabellen lettori_mp3 strukturert som følger:

  • ID
  • merkevare
  • modell
  • beskrivelse
  • farge
  • pris
Anta at produktet du vil kopiere ("iPod Nano 16GB" farge "White") har ID 123.

Å lage en kopi av posten vi vil bruke denne spørringen:






 INSERT INTO lettori_mp3

 





 SELECT * FROM WHERE id = 123 lettori_mp3;



På denne måten vil vi skape en rekord det samme og vi vil bare endre feltene "ID" og "farge" ved å manuelt angi verdiene for den nye posten.

Vær imidlertid oppmerksom på at dersom ID-feltet i tabellen vår har blitt satt som AUTO_INCREMENT unik numerisk verdi med utsikt over den spørringen vil returnere en feil (fordi du ikke kan ha to identiske identifikasjon !!!). I dette tilfellet ville vi nødt til å velge feltene du vil kopiere unntatt ID-feltet:






 INSERT INTO lettori_mp3 (merke, modell, beskrivelse, farge, pris)







 SELECT merke, modell, beskrivelse, 'Silver', pris lettori_mp3 From Where id = 123;



Som du ser har vi kopiert alle feltene i posten unntatt for feltet "ID" (for grunnen omtalt ovenfor).
Du har kanskje lagt merke til også, at vi erstattet i SELECT-setningen til "farge" (i den opprinnelige posten fargen er "White") verdien å sette inn den nye posten ("Silver").

Et voila. Spillet er ferdig.
Vi må bare lage en vakker SELECT på vårt bord for å se om den nye posten er skrevet inn riktig.

Og "neppe nødvendig å påpeke, endelig, at du kan lage kopier av poster inkludert hele eller deler av ulike bord (du trenger bare å angi den korrekte navnene på feltene for å kopiere og sørge for at de aksepterer de samme typer data).

I samme kategori ...
E-Learning
MS Access (Course) MS Access (Course)
Lær hvordan å opprette og administrere databaser enkelt og raskt. Starter fra 29 €.
MySQL (Course) MySQL (Course)
Forvaltning av open-source database. Starter fra 39 €.
SQL og Database (Course) SQL og Database (Course)
Opprette og administrere relasjonsdatabaser. Starter fra 39 €.
Sponsede Lenker