MySQL carico di dati Esercitazione

October 9

MySQL utilizza le e le dichiarazioni "Inserisci" "dati di carico" per inserire i record in una tabella del database. Il "INSERT" carichi economico un record alla volta, mentre il "carico di dati" Dichiarazione importa i dati da un file di testo esterno. L'affermazione "LOAD DATA", si legge rapidamente la linea di file di testo linea che rende molto più veloce di un "INSERT" durante il caricamento di più record in una sola volta.

Creazione del file di testo

Ogni riga del file di testo deve corrispondere a un record (riga) della tabella. I valori per ogni colonna devono essere separati da una scheda e di qualsiasi null (mancante) valori devono essere rappresentati dalla denominazione "\ n".

Ad esempio, se si dispone di una tabella contenente gli indirizzi con i nomi delle colonne essendo fname, lname, staddress, zip, si dovrebbe impostare il seguente file di testo e salvarlo come "addresses.txt"

Kris Miller 301 Anywhere St 17598
Steve Fetterhoff 305 A cuore aperto Ave 17989
James Smith 623 Kensington Ct 98.539

Il file deve essere con le colonne nella stessa posizione come sono nella tabella. Se non siete sicuri del layout di colonna, è possibile digitare il comando "descrivono tablename;". Sostituire "tablename" con il nome della tabella.

Il caricamento dei dati

Per caricare i dati nella tabella, è necessario prima di connettersi al server MySQL, e selezionare il database corretto. Una volta raggiunto il "mysql> programmazione", si digitare il seguente comando:

LOAD DATA LOCAL INFILE '/home/user/address.txt' IN indirizzo TABELLA
ANDARE

Il percorso esatto del file deve essere specificato dopo la parola "INFILE" e essere racchiuso tra virgolette singole. L'esempio sopra mostra un percorso di Linux / Unix, il percorso per una macchina Windows sarebbe qualcosa come "C:. \ Documents and Settings \ utente \ Address.txt \" Inoltre, se il file è stato creato da un editor di testo di Windows, è dovrebbe specificare il \ r \ n terminatore di linea nel comando LOAD DATA con la seguente sintassi:

LOAD DATA LOCAL INFILE '/home/user/address.txt' IN TAVOLA linee di indirizzo terminato da '\ r \ n'
ANDARE

Una volta che il \ "mysql> \" ritorna pronta, è possibile verificare che i dati è stato caricato correttamente con la seguente query:

SELECT * FROM indirizzo
ANDARE

Questa query tornerà con il set di record completo per il \ "indirizzo \" tabella formattata in righe e colonne.

Opzioni dati di carico

La dichiarazione LOAD DATA ha alcune opzioni che vi permetterà di utilizzare un formato alternativo per il file di testo e di gestire l'importazione di dati. L'esempio di cui sopra, utilizza l'opzione \ "Local \". Questa opzione dice a guardare sul computer client per il file. Se ci si connette a un server MySQL remoto e omette l'opzione \ "Local \", il file deve essere ubicato sul server MySQL e verrà letto direttamente dal server.

L'opzione "Sostituisci", dice di sostituire le righe con la stessa chiave primaria come la riga nel file. Una chiave primaria è il valore che identifica in modo univoco ogni record in una tabella. L'opzione "Ignora", dice di saltare le righe che duplicano una riga esistente, in base alla chiave primaria. Queste due opzioni sono designati dopo il nome del file e prima della parola "in" come ad esempio:

LOAD DATA LOCAL INFILE '/home/user/address.txt' REPLACE INTO indirizzo TABELLA
ANDARE

È inoltre possibile specificare che i campi saranno separati da un carattere diverso da una scheda, ad esempio un file comma separated value (CSV), con i "Campi denuncia da parte di" opzione. Questa opzione viene specificato dopo il nome della tabella con la seguente sintassi:

LOAD DATA LOCAL INFILE '/home/user/address.txt' REPLACE nella tabella campi di indirizzo terminato da ','
ANDARE

Puoi trovare altre opzioni che possono essere utilizzate dal "carico nella" dichiarazione nella documentazione di MySQL (vedi Risorse).