Invalide nombre de colonnes dans le format CSV d'entrée sur la ligne 1 Erreur
Je vais essayer d'obtenir un ".csv" un fichier sur une base de données SQL avec phpMyAdmin. Cependant, chaque fois que je l'importer, j'obtiens l'erreur: Invalid nombre de colonnes dans le format CSV d'entrée sur la ligne 1.
J'ai passé toute la journée à jouer avec les différentes options pour essayer et obtenir de travailler, mais sans succès. Il y a exactement 47 colonnes dans mon .fichier csv. J'ai créé des 47 colonnes dans ma table SQL. Les noms cependant ne sont pas exactement les mêmes que celles dans le fichier. Chaque fois que je l'importation, elle continue de me donner cette erreur.
Toute aide serait grandement appréciée!
~Carpetfizz
Une chose que j'ai pensé peut être à l'origine du problème était que la première colonne n'est pas nommé n'importe quoi dans mon document excel. Cela pourrait-il être à l'origine d'un problème?
ÉDITION 12:30: phpMyAdmin est déjà la plus récente version disponible, via (apt-get install phpmyadmin) (phpmyadmin est déjà la plus récente version)
Ici est la .fichier csv, si cela aide.
- l'erreur de vous guider complètement. il est dit sur la ligne 1, vous avez plus de colonnes que vous avez créé dans votre table mysql.
- qu'est-ce que votre code pour le faire, le cas échéant, que trop, essayez de lui donner le nom de la première colonne, puis les importer
- merci pour cette remarque. Dans la feuille de calcul (dont je n'ai pas créé), les numéros de colonne sauter de 47 à 89, et ils sont mis en surbrillance en bleu, des idées sur ce que cela signifie? Voici un écran de celui-ci: i.imgur.com/IJmTZGO.png
- Lors de l'utilisation de
substr_count()
sur les virgules dans votre pastebin csv, je montre 87 virgules, pas le 46 qui serait dans votre 47 colonnes. - phpfiddle.org/main/code/7ui-wc9 - En regardant votre image d'écran de la table (i.imgur.com/IJmTZGO.png), si c'est le saut de 47 à 89, il est plus probable dans 48-88, mais les colonnes ont été colapsed. Essayez de les étendre à tous encore une fois, et vous verrez le supplément de colonnes dans chaque ligne.
- j'ai téléchargé votre fichier csv et importer avec phpmyadmin sans aucun problème. essayez d'améliorer votre phpmyadmin version. le mien est 3.5.5
- hm je suis à court d'informations sur la Version: 3.4.11.1deb1. J'ai simplement utilisé la commande apt-get sur mon Pi, je suis donc en admettant qu'il ai pris la dernière version disponible pour son système d'exploitation?
- Merci pour le contrôle. Qui confirme mon suspcision il n'y a plus de valeurs. Cependant, je n'arrive pas à le développer? Comment pourrais-je aller sur le faire? Si je clic droit sur le "Démasquer" l'option est grisée ainsi.
- J'ai eu le même problème. J'ai utilisé Microsoft Excel 2013 pour exporter un .fichier csv, et il a utilisé des points-virgules (;) à la place de la virgule. Autre que cela, Daniel Fillipance réponse a fonctionné pour moi. Notamment, j'ai aussi eu des problèmes avec les caractères étrangers après l'importation. Pour résoudre ce problème, j'ai ouvert la .fichier csv dans le bloc-notes et sélectionnez enregistrer comme, assurez-vous de l'ensemble de "l'encodage" UTF-8. Je poste comme un commentaire au lieu de cela, mais je n'ai pas assez de "réputation".
Vous devez vous connecter pour publier un commentaire.
Si votre base de données de la table existe déjà et que vous ne souhaitez PAS inclure toutes les colonnes de la table dans votre fichier CSV, puis lorsque vous exécutez PHP Admin d'Importation, vous aurez besoin de remplir la Colonne des Noms de domaine dans le des Options Spécifiques au Format CSV pour l'exemple ici, au bas de la capture d'écran suivante.
En résumé:
.CSV
fichier.Fixe! En gros, j'ai juste sélectionné "à l'Importation" sans même faire un tableau moi-même. phpMyAdmin créé la table pour moi, avec tous les noms de colonne, à partir du document original.
J'ai eu le même message d'erreur lors de l'importation .fichier csv à l'aide de phpMyAdmin.
Solution à mon problème était que mon ordinateur a sauvé la .fichier csv avec le ; (point-virgule) comme séparateur, au lieu de , (virgule).
Dans le Format Spécifique des Options vous pouvez cependant choisi "colonnes séparées:" et sélectionnez ; au lieu de , (virgule).
Afin de voir ce que votre ordinateur enregistre le fichier, ouvrez le .fichier csv dans un éditeur de texte.
Vous aurez besoin d'ignorer la première ligne (d'où les noms de colonnes sont définis) et vous aurez besoin de vérifier qui "caractère" est cellules de séparation (est habituellement
,
, mais dans mon cas était;
)Soufflet est la photo de ma importation:
J'ai juste eu ce problème et a réalisé qu'il y avait des colonnes vides être traités comme des colonnes avec des valeurs, je l'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 mon dernier article, ils avaient l'air complètement vide, mais qu'ils ne l'étaient pas. Après j'ai fait cela, l'importation fonctionne parfaitement.
Eu le même problème et a fait deux changements: (a) ne pas écraser les données existantes (pas l'idéal si c'est votre intention, mais vous pouvez exécuter une requête de suppression à l'avance), et (b) a compté le nombre de colonnes et constaté que le csv avait une colonne vide de sorte qu'il paie toujours pour revenir à votre travail, même si tous "semble" à l'air correct.
Lorsque confrontés à des erreurs avec les fichiers d'entrée de n'importe quel type, problèmes d'encodage sont communs.
Une solution simple pourrait être d'ouvrir un nouveau fichier, le copier-coller votre texte CSV en elle, puis de l'enregistrer comme un nouveau fichier.
Votre solution semble supposons que vous souhaitez créer un nouveau tableau.
Toutefois, si vous souhaitez ajouter du contenu à une déjà existante de la table, regardez en haut de la structure de la table et de noter le nombre de colonnes (colonne id, si vous avez un compte encore->même si elle peut être auto incrément/unique)
Donc, si vous le tableau ressemble à ceci
Nom de l'id Age Sexe
assurez-vous que votre tableau excel ressemble
A1 id B1 Nom C1 Âge D1 Sexe
et maintenant ils ont tous deux des 4 colonnes.
Également droit en vertu de l'partielle à l'importation, à côté de la benne et le nombre de requêtes.... augmenter le nombre de sauter sur la ligne appropriée. choix 1 sautera automatiquement la première ligne. Pour ceux qui ont des en-têtes dans les fichiers excel
Si la table a déjà été créé, et vous avez été assez paresseux de ne pas spécifier les colonnes dans le champs de saisie, puis tout ce que vous avez à faire est de sélectionner les colonnes vides à droite le contenu du fichier et de les supprimer.
J'ai eu un problème similaire avec phpmyAdmin. Le nombre de colonnes dans le fichier à importer appariés les colonnes dans la table de base de données cible. J'ai essayé de l'importation de fichiers à la fois .csv et .ods format en vain, d'obtenir une variété d'erreurs, dont l'un soutenant que le nombre de colonnes a été mauvais.
À la fois l' .csv et .ods fichiers ont été créés avec LibreOffice 5.204. Basé sur un peu d'expérience avec les questions d'importation dans les années passées, j'ai décidé de refaire les fichiers avec le tableur gnumeric, l'exportation de l' .ods en conformité avec la "stricte" format standard. Voila! Pas plus de problème d'importation. Alors que je n'ai pas eu le temps d'étudier la question plus en détail, je soupçonne que quelque chose a changé dans la structure interne de LibreOffice du fichier de sortie.
La dernière colonne de ma base de données (c'est la colonne F de la feuille de calcul) n'est pas utilisé et donc vide. Lorsque j'ai importé excel en fichier CSV, j'ai eu la "colonne" nombre d'erreur.
C'est parce que excel a été seulement enregistrer les colonnes que j'utilise. UN-E
L'ajout d'un 0 à la première ligne de F résolu le problème, alors je l'ai supprimé après l'upload a réussi.
Espérons que cela aide et sauve quelqu'un d'autre le temps et la perte de cheveux 🙂
La chose la plus stupide jamais qui va corriger cette erreur dans Microsoft Excel (en supposant que vous avez réellement tout le reste à droite):
Sélectionnez vos données et cliquez sur "Frontières" dans Excel (met visual frontières autour de vos données avant de les enregistrer au format CSV. Son inutile? Je suis complètement d'accord! Cependant, il va corriger cette erreur. J'utilise ce truc au moins trois fois par semaine.