web-dev-qa-db-fra.com

Dans MySQL Workbench, l'utilisation de "l'Assistant d'importation de données de table" pour importer des fichiers CSV crée une table vide.

J'essaie d'importer un fichier csv dans une table MySQL à l'aide de l'Assistant d'importation de données de table. La section exemple située au bas de l'écran Configurer les paramètres d'importation a l'air bien et lorsque j'exécute l'importation, elle indique que toutes mes entrées ont été chargées avec succès. Cependant, lorsque je vais voir le contenu de la table, seules les colonnes sont présentes et aucune de mes données réelles n'est chargée. Est-ce que quelqu'un sait pourquoi cela pourrait se produire et comment le corriger?

MODIFIER:

Voici quelques lignes de mon fichier CSV:

STATION, STATION_NAME, ELEVATION, LATITUDE, LONGITUDE, DATE, MLY-TAVG-NORMAL, MLY-TMAX-NORMAL, MLY-TMIN-NORMAL, Temp moyenne, Temp max., Temp min GHCND: USW00094085, PIERRE 24S SD US, 647,4,44,0194, -100,353,201001,218,322,113,21.8,32.2,11.3 GHCND: USW00094085, PIERRE 24 S SD US, 647,4,44,0194, -100,353,201002, 246,354,137,24,6,35,4,13,7 GHCND: USW00094085, PIERRE 24 S SD US, 647,4,44,0194, -100,353,201003,339,451,226,33,9,45,1,22,6 GHCND: USW00094085, PIERRE 24S SD US, 647,4,44,0194, -100,353,201004,463,588,337,46,3,58,8,33,7 GHCND: USW00094085, PIERRE 24 S SD US, 647,4,44,0194, -100,353,201005,573,696,450,57,3,69,6,45

Voici quelques images du processus d'importation:  Image1

 Image2

 Image3

 Image4

 Image5

 Image6

Et voici ce que je vois lorsque je tente d’afficher le tableau nouvellement créé:  Image7

Deuxième édition:

Voici une image de mes paramètres:

 Settings

Et voici une image de mon fichier CSV montrant les fins de ligne:

 enter image description here

8
Erik Hanson

Vérifiez l'encodage de votre fichier. Lors de l'analyse d'un fichier source au format UTF-8, le workbench bombarde en silence lorsqu'il rencontre des caractères non UTF-8. J'ai utilisé cp1250 (Windows 1250) pour un fichier exporté à partir d'Excel et tout fonctionnait correctement.

7
Taurai Benhura

Vous devez vous assurer que vos options csv sont correctement définies lors de l'importation du tableau.

Lorsque vous arrivez à l’écran ci-dessous, notez que la flèche rouge pointe vers la clé. En cliquant sur cette option, une liste déroulante permettant de définir votre séparateur de ligne, les chaînes englobant et le séparateur de champ apparaît. Si ceux-ci ne sont pas définis correctement, les données se chargeront sans succès.

 enter image description here

Vous trouverez ci-dessous un exemple de fichier CSV. Remarquez comment dans Notepad ++ le bouton d'habillage est enfoncé pour que vous puissiez voir la fin de la ligne. Dans ce cas, la fin de la ligne est CR LF. L'option par défaut de l'assistant d'importation de Workbench est uniquement LF. En outre, le séparateur de champ par défaut semble être un ; et non un ,.

 enter image description here

Vous pouvez en lire plus ici à dev.mysql

3
BK435

J'ai rencontré le même problème et j'ai essayé de le résoudre en modifiant les paramètres, mais cela n'a pas fonctionné pour moi. Je viens d'importer toutes les données en tant que type de données txt et

(ALTER TABLE tablename MODIFY COLUMN datatype)

plus tard pour corriger le type de données. 

1
Jennie

Essayé avec vos données d'échantillon et il a bien importé. Je suppose qu'il y a quelque chose qui cloche avec les données supplémentaires. Peut-être qu'un (ou plusieurs) des enregistrements ne sont pas comme ils le devraient. L'aperçu est correct pour le premier nombre d'enregistrements. Votre définition d'importation semble donc correcte. Essayez d'importer de plus petits morceaux de disques. Commencez par 1, augmentez-le jusqu'à dix, etc. Jusqu'à ce que l'importation échoue. Vous pouvez également essayer avec une seule colonne. Si cela réussit, effectuez une recherche binaire de la colonne qui a échoué.

Remarque: il y a un bogue lors de l'affichage des lignes importées (et a été corrigé pour la prochaine version). Cela indique toujours le nombre total d'enregistrements, pas ceux réellement importés.

0
Mike Lischke