web-dev-qa-db-fra.com

Nombre de colonnes non valide dans l'entrée CSV sur la ligne 1

J'essaie d'obtenir un fichier ".csv" sur une base de données SQL avec phpMyAdmin. Cependant, chaque fois que je l'importe, le message d'erreur suivant s'affiche: Nombre de colonnes non valide dans l'entrée CSV de la ligne 1. J'ai passé toute la journée à jouer avec différentes options pour essayer de le faire fonctionner, mais sans résultat. Il y a exactement 47 colonnes dans mon fichier .csv. J'ai créé 47 colonnes dans ma table SQL. Les noms ne sont toutefois pas exactement les mêmes que ceux du fichier. Chaque fois que j'importe, cela me donne toujours cette erreur. Toute aide serait grandement appréciée. Cela pourrait-il causer un problème?

EDIT 12:30: phpMyAdmin est déjà la dernière version disponible, via (apt-get install phpmyadmin) (phpmyadmin est déjà la dernière version)

Space in A1

Ici est le fichier .csv, si cela peut vous aider.

29
Carpetfizz

Fixé! En gros, je viens de choisir "Importer" sans même créer une table moi-même. phpMyAdmin a créé la table pour moi, avec tous les bons noms de colonnes, à partir du document original. 

40
Carpetfizz

Si votre table de base de données existe déjà et que vous ne souhaitez PAS inclure toutes les colonnes de la table dans votre fichier CSV, lorsque vous exécutez PHP Admin Import, vous devez renseigner le champ Noms de colonne dans les Options de format spécifiques. for CSV - Montré ici au bas de la capture d'écran suivante.

En résumé:

  • Choisissez un fichier CSV
  • Définissez le format sur CSV
  • Remplissez le champ Noms des colonnes avec les noms des colonnes de votre CSV
  • Si les noms de colonne de votre fichier CSV sont répertoriés à la ligne 1, définissez l'option "Ignorer ce nombre de requêtes (pour SQL) ou de lignes (pour d'autres formats), en commençant par le premier" à 1.

enter image description here

55
Daniel Flippance

J'ai eu la même erreur lors de l'importation d'un fichier .csv avec phpMyAdmin. 

La solution à mon problème était que mon ordinateur enregistrait le fichier .csv avec; (point-virgule) comme délimiteur au lieu de (virgules). 

Dans les options spécifiques au format, vous pouvez toutefois choisir "colonnes séparées:" et sélectionner; au lieu de (virgule). 

Pour voir ce que votre ordinateur stocke le fichier, ouvrez le fichier .csv dans un éditeur de texte. 

10
Nicholas

Je viens d'avoir ce problème et je me suis rendu compte qu'il y avait des colonnes vides traitées comme des colonnes avec des valeurs, ce que j'ai vu en ouvrant mon CSV dans mon éditeur de texte. Pour résoudre ce problème, j'ai ouvert ma feuille de calcul et supprimé les colonnes après ma dernière colonne. Elles avaient l'air complètement vides, mais elles ne l'étaient pas. Après cela, l'importation a parfaitement fonctionné. 

1
Cody O'Dell

Avait le même problème et fait deux changements: (a) ne pas écraser les données existantes (pas idéal si c'est votre intention, mais vous pouvez exécuter une requête de suppression au préalable), et (b) a compté les colonnes et a constaté que le CSV avait une colonne vide, il est donc toujours utile de revenir à votre travail initial, même si tout semble "correct".

1
Rule

Vous devrez ignorer la première ligne (où les noms de colonne sont définis) et vérifier quel "caractère" sépare les cellules (généralement ,, mais dans mon cas c'était ;)

Ci-dessous la photo de mon import:

 enter image description here

1
raBne

Lorsque vous rencontrez des erreurs avec des fichiers d'entrée de tout type, les problèmes d'encodage sont courants.

Une solution simple pourrait être d'ouvrir un nouveau fichier, de copier-coller votre texte CSV, puis de l'enregistrer en tant que nouveau fichier.

0
P-S

J'ai eu un problème similaire avec phpmyAdmin. Le nombre de colonnes du fichier à importer correspond aux colonnes de la table de la base de données cible. J'ai essayé en vain d'importer des fichiers au format .csv et .ods, ce qui a entraîné diverses erreurs, dont une indiquant que le nombre de colonnes était incorrect.

Les fichiers .csv et .ods ont été créés avec LibreOffice 5.204. Fort de quelques années d’expérience en matière d’importation, j’ai décidé de remanier les fichiers avec le tableur gnumeric, en exportant les fichiers .ods conformément au format "strict". Voila! Plus de problème d'importation. Bien que je n’aie pas eu le temps d’enquêter davantage sur le problème, je suppose que quelque chose a changé dans la structure interne de la sortie de fichier de LibreOffice.

0
Bill Wilken

Votre solution semble supposer que vous souhaitez créer une table entièrement nouvelle. 

Toutefois, si vous souhaitez ajouter du contenu à une table existante, recherchez la structure de la table et notez le nombre de colonnes (la colonne id, si vous en avez une, compte toujours-> même si elle peut être incrémentée/unique automatiquement). 

Donc, si votre table ressemble à ceciid Nom Age Sexe 

assurez-vous que votre tableau Excel ressemble à A1 id B1 Nom C1 Âge D1 Sexe

et maintenant ils ont tous deux 4 colonnes.

Également juste sous l'importation partielle, à côté de ignorer le nombre de requêtes ..., augmentez le nombre pour ignorer la ligne appropriée. Si vous choisissez 1, la première ligne sera automatiquement ignorée. Pour ceux qui peuvent avoir des en-têtes dans les fichiers Excel

0
Joseph Quaye

Si la table a déjà été créée et que vous avez été assez paresseux pour ne pas spécifier les colonnes dans l'entrée des noms de champs, il vous suffit de sélectionner les colonnes vides à droite du contenu du fichier et de les supprimer.

0
Yazid Erman

La chose la plus stupide qui puisse jamais résoudre cette erreur dans Microsoft Excel (en supposant que tout soit correct): 

Sélectionnez vos données et cliquez sur "Tout borde" dans Excel (place des frontières visuelles autour de vos données) avant de sauvegarder le fichier CSV. Cela semble inutile? Je suis complètement d'accord! Cependant, cela corrigera cette erreur. J'utilise cette astuce au moins trois fois par semaine.

0
jtubre

La dernière colonne de ma base de données (la colonne F de la feuille de calcul) n'est pas utilisée et est donc vide. Lorsque j'ai importé le fichier CSV Excel, j'ai reçu l'erreur "Nombre de colonnes".

En effet, Excel ne faisait que sauvegarder les colonnes que j'utilise. A-E 

L'ajout d'un 0 à la première ligne de F a résolu le problème, puis je l'ai supprimé une fois le téléchargement réussi.

J'espère que cela aide et sauve du temps et une perte de cheveux à quelqu'un d'autre :)

0
Netwise Spain