Tabelle Mysqldump esclusi alcuni campi


14

C'è un modo per mysqldump una tabella senza alcuni campi?

Lasciami spiegare:
ho un database MySQL chiamato tests. In testsHo 3 tabelle: USER, TOTOe TATA. Voglio solo mysqldump alcuni campi della tabella USER, quindi escludendo alcuni campi come mail,ip_login ecc

Come posso fare questo?

Risposte:


13

Prova questo:

SELECT column1, column2, column10
FROM USER
INTO OUTFILE "c:/user.csv"
  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  LINES TERMINATED BY "\n";

Per ulteriori opzioni leggere la pagina della documentazione .


8

Questo non può essere fatto direttamente con mysqldump. Tuttavia, è possibile creare una tabella temporanea o una vista che non contiene i dati in questione e quindi scaricare i dati risultanti. Nel caso di una vista, penso che dovrai usareINTO OUTFILE piuttosto che mysqldump per ottenere i dati desiderati, ma l'uso di una vista anziché di una tabella temporanea ha il vantaggio di non occupare spazio aggiuntivo nel DBMS.

L'altra opzione è quella di creare un parser per il file per eliminare i campi che non si desidera. Per dirla in parole povere, questo può complicarsi molto rapidamente, ovvero complicare il fatto di voler creare un parser robusto di fronte a caratteri multibyte, separatori di stringhe sfuggiti, ecc. Ecc. Ma per il banale o uno -time-use case, potrebbe essere comunque un'opzione valida.


0

Puoi anche usare Phpmyadmin per farlo. Crea una query per selezionare i campi desiderati, quindi scegli la funzione "esporta" nella parte inferiore della pagina (questo esporta i risultati della query, non l'intera tabella) e scegli l'opzione "Personalizzata". Puoi quindi scegliere SQL come formato: se lo desideri, puoi creare una serie di query UPDATE anziché INSERTS. Spesso può essere un modo rapido per fare qualcosa del genere.


0

Molti strumenti di amministrazione DB hanno la possibilità di eseguire un'importazione personalizzata. In particolare, l'ho realizzato usando Toad per MySQL per trasferire dati tra tabelle usando PK di autoincremento.

Ho salvato un risultato della query in Excel utilizzando la procedura guidata di esportazione.

Quindi è possibile escludere le colonne utilizzando l'Importazione guidata impostando il campo Origine su: Salta questa colonna

procedura guidata di importazione

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.