..


Enllaços patrocinats

Actualització de dues o més taules

Article escrit per Max Bossi

Amb l'ordre UPDATE, podem actuar sobre els registres existents i modificats.
Suposem, per exemple, tenen, a la nostra base de dades phone_numbers taula estructurada de la següent manera:

  • nom
  • telèfon
i dir que la nostra. Taula 3 ja està poblat de registres:

nom telèfon
John Smith 123.456789
Antonio Bianchi 987.654321
Claudio Verdi 321.654987

Ara, diguem que el senyor John Smith ha estat transferida i, per tant, ha canviat el número de telèfon. Per actualitzar el nostre directori telefònic s'utilitza una consulta com aquesta:





 ACTUALITZACIÓ







 phone_numbers







 Setembre







 Telèfon = 0,698547 '213 '







 ON







 name = 'John Doe'



Fins aquí res de nou.
Ara suposem que tenim també una altra taula anomenada adreces de la següent estructura:
  • nom
  • per
  • ciutat
  • prov
Suposem llavors que aquesta taula ja està poblada amb 3 registres corresponents a les direccions dels tres amics ja estan presents en l'altra taula:

nom per cita prov
John Smith Via Roma 11 Torí A
Antonio Bianchi Via Garibaldi 2 Gallarate VA
Claudio Verdi Piazza Cavour 4 Com CO

Després d'aquest llarg preàmbul arribem a la pregunta que el títol d'aquest article: Com puc actualitzar dues taules al mateix temps, és a dir, mitjançant una consulta en lloc de dos?
Simple, utilitzant una combinació en la fase d'actualització!

Tornant a la primera s'utilitza una consulta com aquesta:






 ACTUALITZACIÓ







 phone_numbers







 INNER JOIN







 adreces







 ON







 numeri_di_telefono.nome = indirizzi.nome







 Setembre







 numeri_di_telefono.telefono = 0,698547 '213 ',







 'Plaça de la República 5' = indirizzi.via,







 indirizzi.citta = 'Milan',







 indirizzi.prov = 'MI'







 ON







 numeri_di_telefono.nome = 'John Doe'



Després d'executar la consulta d'actualització verificat per dos separats SELECT en dues taules. Aquí hi ha els resultats (en groc):

1) Taula phone_numbers

 



 SELECT * FROM phone_numbers

 
nom telèfon
John Smith 213.698547
Antonio Bianchi 987.654321
Claudio Verdi 321.654987

1) direcció de la taula
 



 SELECT * FROM adreces

 
nom per cita prov
John Smith Plaça de la República maig Milà MI
Antonio Bianchi Via Garibaldi 2 Gallarate VA
Claudio Verdi Piazza Cavour 4 Com CO

L'avantatge pràctica d'una tècnica per actualitzar diverses taules, cadascuna relacionada amb JOIN és reduir la càrrega de treball del servidor basat en un simple principi: "una consulta és millor que dos."

A la mateixa categoria ...
E-Learning
MS Access (Curs) MS Access (Curs)
Aprendre a crear i gestionar bases de dades fàcil i ràpidament. A partir de 29 €.
MySQL (Curs) MySQL (Curs)
Gestió de base de dades de codi obert. A partir de 39 €.
SQL i bases de dades (curs) SQL i bases de dades (curs)
Creació i gestió de bases de dades relacionals. A partir de 39 €.
Enllaços patrocinats