J'ai un fichier CSV. Il contient 1,4 million de lignes de données, je ne suis donc pas en mesure d'ouvrir ce fichier csv dans Excel car sa limite est d'environ 1 million de lignes.
Par conséquent, je souhaite importer ce fichier dans MySQL workbench. Ce fichier csv contient des colonnes comme
"Service Area Code","Phone Numbers","Preferences","Opstype","Phone Type"
J'essaye de créer une table dans MySQL workbench nommée comme "factice" contenant des colonnes comme
ServiceAreaCodes,PhoneNumbers,Preferences,Opstyp,PhoneTyp.
Le fichier CSV est nommé model.csv
. Mon code dans Workbench est comme ceci:
LOAD DATA LOCAL INFILE 'model.csv' INTO TABLE test.dummy FIELDS TERMINATED BY ',' lines terminated by '\n';
mais j'obtiens une erreur comme model.CSV file not found
Réponses:
Je suppose que vous manquez la clause ENCLOSED BY
LOAD DATA LOCAL INFILE '/path/to/your/csv/file/model.csv' INTO TABLE test.dummy FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';
Et spécifiez le chemin complet du fichier csv
Charger un fichier de données - Documentation MySQL
la source
'//path//to//your//csv//file//model.csv'
et tous les champs contenant des barres obliques simples se sont cassés.Dans le cas où vous avez un ensemble de données plus petit, un moyen d'y parvenir par GUI est:
Référence: http://www.youtube.com/watch?v=tnhJa_zYNVY
la source
Dans le navigateur sous SCHEMAS, faites un clic droit sur votre schéma / base de données et sélectionnez "Assistant d'importation de données de table"
Fonctionne aussi pour Mac.
la source
Vous pouvez utiliser l' assistant d'importation de données de table MySQL
la source
Pour le moment, il n'est pas possible d'importer un CSV (en utilisant MySQL Workbench) sur toutes les plates-formes, ni n'est conseillé si ledit fichier ne réside pas dans le même hôte que l'hôte du serveur MySQL.
Cependant, vous pouvez utiliser mysqlimport .
Exemple:
mysqlimport --local --compress --user=username --password --host=hostname \ --fields-terminated-by=',' Acme sales.part_*
Dans cet exemple
mysqlimport
est demandé de charger tous les fichiers nommés "ventes" avec une extension commençant par "part_". C'est un moyen pratique de charger tous les fichiers créés dans l'exemple «fractionné». Utilisez l'option --compress pour minimiser le trafic réseau. L'option --fields-terminated-by = ',' est utilisée pour les fichiers CSV et l'option --local spécifie que les données entrantes se trouvent sur le client. Sans l'option --local, MySQL recherchera les données sur l'hôte de la base de données, spécifiez donc toujours l'option --local.Il existe des informations utiles sur le sujet dans la documentation AWS RDS .
la source
Si le serveur réside sur une machine distante, assurez-vous que le fichier se trouve sur la machine distante et non sur votre machine locale.
Si le fichier se trouve sur la même machine que le serveur mysql, assurez-vous que l'utilisateur mysql a les autorisations pour lire / écrire le fichier, ou copiez le fichier dans le répertoire du schéma mysql:
Dans mon cas dans ubuntu, c'était: /var/lib/mysql/db_myschema/myfile.csv
En outre, sans rapport avec ce problème, mais si vous rencontrez des problèmes avec les nouvelles lignes, utilisez sublimeTEXT pour modifier les fins de ligne au format WINDOWS, enregistrez le fichier et réessayez.
la source
Cela semble un peu délicat car cela me dérangeait vraiment depuis longtemps.
Il vous suffit d'ouvrir le tableau (cliquez avec le bouton droit de la souris sur "Select Rows- Limit 10000") et vous ouvrirez une nouvelle fenêtre. Dans cette nouvelle fenêtre, vous trouverez "l'icône d'importation".
la source