[Db] Copiare il contenuto di una tupla in un'altra tabella

Michel michel a ziobudda.net
Sab 10 Mar 2007 01:09:21 CET


Ciao all.

    Per un applicativo che sto realizzando quando l'utente mi conferma 
la cancellazione di un dato io non voglio che il dato venga realmente 
cancellato, ma solo che i suoi riferimenti all'interno del DB (Mysql) 
vengano spostati da una tabella ad un altra. Questo spostamento (al 
posto di un normale campo "stato") è motivato dal fatto che non voglio 
tenere "dati" morti all'interno delle tabelle, rendendole cosi' piu' 
veloci.

Ora: questo "spostamento" lo posso realizzare facendo una "INSERT INTO 
tabellaMorti select * from tabellaVivi where id_dato = X". Ma questo mi 
obbliga ad avare le stesse colonne (= gli stessi campi) sia in 
tabellaVivi che in tabellaMorti, mentre io in tabellaMorti ho un campo 
in piu' che mi dice quando il record ci è finito. Quindi questa tipo di 
insert mi ritorna un errore e non la posso utilizzare.

Ma non vorrei neppure dover prelevare i dati da cancellare dalla 
tabellaVivi, poi sul server PHP costruire un query del tipo "insert into 
tabellaMorti(campo1, campo2, campo3) values(vivi1, vivi2, vivi3), 
eseguirla e poi...

C'e' un modo piu' veloce per fare questa cosa con MySQL ?

Grazie e ciao.

-- 
Michel 'ZioBudda' Morelli                       michel a ziobudda.net
Consulenza sistemistica in ambito OpenSource.
Sviluppo applicazioni web dinamiche (LAMP+Ajax)
Telefono: +39-3939890025 --  Fax: +39-0291390660

http://www.ziobudda.net                         ICQ: 58351764  
http://www.ziobuddalabs.it                      Skype: zio_budda
http://www.ajaxblog.it 	                        MSN: michel a ziobuddalabs.it                  



Maggiori informazioni sulla lista Db