MySQL
mysqlimport
Suche…
Parameter
| Parameter | Beschreibung |
|---|---|
--delete -D | leeren Sie die Tabelle, bevor Sie die Textdatei importieren |
--fields-optionally-enclosed-by | Definiere das Zeichen, das die Felder zitiert |
--fields-terminated-by | Feldabschlusszeichen |
--ignore -i | Ignorieren Sie die aufgenommene Zeile bei Duplikaten |
--lines-terminated-by | Zeilenabschluss definieren |
--password -p | Passwort |
--port -P | Hafen |
--replace -r | Überschreiben Sie die alte Eingabezeile bei Duplikatschlüsseln |
--user -u | Nutzername |
--where -w | Geben Sie eine Bedingung an |
Bemerkungen
mysqlimport verwendet den Namen der importierten Datei nach dem Entfernen der Erweiterung, um die Zieltabelle zu bestimmen.
Grundlegende Verwendung
Angenommen, die durch Tabulatoren getrennte Datei employee.txt
1
\tArthur Dent
2\tMarvin
3\tZaphod Beeblebrox
$ mysql --user=user --password=password mycompany -e 'CREATE TABLE employee(id INT, name VARCHAR(100), PRIMARY KEY (id))'
$ mysqlimport --user=user --password=password mycompany employee.txt
Verwenden eines benutzerdefinierten Feldbegrenzers
Angenommen, die Textdatei employee.txt
1 | Arthur Dent
2 | Marvin
3 | Zaphod Beeblebrox
$ mysqlimport --fields-terminated-by='|' mycompany employee.txt
Verwenden eines benutzerdefinierten Zeilenbegrenzers
Dieses Beispiel ist nützlich für Windows-ähnliche Endungen:
$ mysqlimport --lines-terminated-by='\r\n' mycompany employee.txt
Umgang mit doppelten Schlüsseln
Angesichts der Tabelle Employee
| Ich würde | Name |
|---|---|
| 3 | Yooden Vranx |
Und die Datei employee.txt
1
\tArthur Dent
2\tMarvin
3\tZaphod Beeblebrox
Die Option --ignore ignoriert die Eingabe für doppelte Schlüssel
$ mysqlimport --ignore mycompany employee.txt
| Ich würde | Name |
|---|---|
| 1 | Arthur Dent |
| 2 | Marvin |
| 3 | Yooden Vranx |
Die Option --replace überschreibt den alten Eintrag
$ mysqlimport --replace mycompany employee.txt
| Ich würde | Name |
|---|---|
| 1 | Arthur Dent |
| 2 | Marvin |
| 3 | Zaphod Beeblebrox |
Bedingter Import
$ mysqlimport --where="id>2" mycompany employee.txt
Importieren Sie eine Standard-CSV
$ mysqlimport
--fields-optionally-enclosed-by='"'
--fields-terminated-by=,
--lines-terminated-by="\r\n"
mycompany employee.csv
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow