View Full Version : [SQL] Spostare più record da una tabelle Mysql ad un 'altra
v_e_l_e_n_o
13-01-2009, 13:07
Ciao ragazzi volevo sapere come posso fare a spostare determinati record da una tabella mysql ad un'altra, possibilmente tramite interfaccia phpmyadmin oppure se volete scrivermi la sintassi sql appropriata da dare.
in poche parole dovrei copiare dei record presenti dentro una tabella bak_users nella tabella jos_users
Scusate se non è la sezione giusta spostatemi
Una strada è quella di usare il mysql query browser per effettuare una query in grado di estrarre i dati dalla tabella di origine.
Usare la funzione Export Result Set per esportarli in formato CSV.
Caricarli nella nuova tabella usando il comando mysql LOAD DATA LOCAL INFILE 'c:/risultati.csv' INTO table nometabelladestinazione;
yorkeiser
13-01-2009, 14:00
Se il set dei record da spostare è identificabile tramite una query, puoi utilizzare anche una semplice select into (link (http://dev.mysql.com/doc/refman/5.0/en/select-into-statement.html))
v_e_l_e_n_o
13-01-2009, 16:04
ma scusate non ho capito bene cosa dovrei fare, purtroppo non sono un esperto....
allora il database è hostato in rete, i record sono si identificabili, nell'atto pratico io dovrei spostare i record dall "id" 63 al 76 da database.bak_users a database.jos_users
io farei cosi'
INSERT INTO jos_users(col1, col2, col3, ..., colN)
SELECT col1, col2, col3, ..., colN FROM bak_users
WHERE id BETWEEN 63 and 76;
v_e_l_e_n_o
13-01-2009, 16:50
INSERT INTO jos_users
SELECT *
FROM bak_users
WHERE id
BETWEEN 63 and 76;
ho fatto csosì usando SELECT* poichè devo copiare l'intera riga del record.....
ora l'esito della query è stato positivo,ho controllato e confrontato le tabelle e mi paiono uguali ora sia come contenuti e come struttura,ma in realtà il mio cms non lo vede, o pare non vederlo.
le tabelle qui elencate contengono le informazioni sugli utenti registrati, mi serviva appunto copiare dei record da una all'altra per questo motivo, ma sul backend del sito non vengono visualizzati....mmm che ci sia qualcosa di sbagliato?
Possono esserci parecchi motivi per cui un'applicazione pare non sentire un cambiamento manuale nel database.
Magari serve anche popolare qualche tabella di relazione (es. ruoli?)
Oppure c'e' di mezzo una cache
Oppure c'e' di mezzo un ORM che non gradisce che nessuno tocchi le tabelle a mano (tecnicamente "da sotto il c..o"), perche' mantiene alcuni dati relativi anche da qualche altra parte.
v_e_l_e_n_o
13-01-2009, 17:53
pensavo anch'io alla cache, ma ho visto che alla fine il problema risiedeva nel fatto che non era l'unico database da cambiare, ve ne erano altri due da aggiornare, grazie a tutti cmq.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.