Неверный счетчик столбцов во входе CSV в строке 1 ошибка
Я пытаюсь получить ".csv " файл в базу данных SQL с phpMyAdmin. Однако всякий раз, когда я импортирую его, я получаю ошибку: недопустимое количество столбцов во входных данных CSV в строке 1. Я провел весь день, играя вокруг с различными вариантами, чтобы попытаться заставить его работать, но безрезультатно. В моем ровно 47 столбцов .CSV-файл. Я создал 47 столбцов в моей таблице SQL. Однако имена не совсем совпадают с именами в файле. Когда я импортирую, он продолжает давать мне эту ошибку. Любая помощь был бы очень признателен! ~ Carpetfizz Одна вещь, которую я думал, может вызвать проблему, заключалась в том, что первый столбец ничего не назван в моем документе excel. Может ли это вызвать проблему?
EDIT 12: 30AM: phpMyAdmin уже последняя версия доступна, через (apt-get install phpmyadmin) (phpmyadmin уже последняя версия)
здесь - это .CSV-файл, если это поможет.
12 ответов
Если ваша таблица БД уже существует, и вы не хотите включать все столбцы таблицы в свой CSV-файл, то при запуске PHP Admin Import вам нужно будет заполнить поле имена столбцов в параметрах формата для CSV, показанных здесь внизу следующего скриншота.
в итоге:
- Выберите файл CSV
- установите формат в CSV
- заполните поле имена столбцов именами столбцов в вашем CSV
- если ваш CSV-файл имеет имена столбцов, перечисленные в строке 1, Установите "пропустить это количество запросов (для SQL) или строк (для других форматов), начиная с первого" до 1
исправлено! Я в основном просто выбрал "импорт", даже не делая таблицу сам. phpMyAdmin создал для меня таблицу со всеми правильными именами столбцов из исходного документа.
Я получил ту же ошибку при импорте .csv-файл с использованием phpMyAdmin.
решением моей проблемы было то, что мой компьютер сохранил .csv-файл с; (с запятой) в качестве разделителя вместо, (запятые).
в параметрах формата вы можете выбрать "столбцы разделены:" и выбрать ; вместо, (запятая).
чтобы посмотреть, в чем ваш компьютер хранит файл, откройте .CSV-файл в текстовом редакторе.
У меня просто была эта проблема и я понял, что пустые столбцы рассматриваются как столбцы со значениями, я увидел это, открыв свой CSV в текстовом редакторе. Чтобы исправить это, я открыл электронную таблицу и удалил столбцы после моего последнего столбца, они выглядели полностью пустыми, но они не были. После того, как я сделал это, импорт работал отлично.
имел ту же проблему и сделал два изменения: (a) не переписал существующие данные (не идеально, если это ваше намерение, но вы можете запустить запрос на удаление заранее), и (b) подсчитал столбцы и обнаружил, что csv имеет пустой столбец, поэтому всегда платит, чтобы вернуться к исходной работе, даже если все "кажется" правильным.
вам нужно будет пропустить первую строку (где определены имена столбцов), и вам нужно будет проверить, какой "символ" разделяет ячейки (обычно это ,
, но в моем случае был ;
)
Ниже приведена картина моего импорта:
ваше решение, похоже, предполагает, что вы хотите создать совершенно новую таблицу.
однако, если вы хотите добавить содержимое в уже существующую таблицу, найдите структуру таблицы и обратите внимание на количество столбцов (столбец id, если у вас есть один все еще подсчитывает ->, даже если это может быть автоматическое приращение/уникальный)
Итак, если таблица выглядит так id имя возраст секс
убедитесь, что ваша таблица excel выглядит так A1 id B1 имя C1 возраст D1 пол
и теперь они оба имеют 4 колонки.
также прямо под частичным импортом, рядом с пропуском количества запросов.... увеличьте число, чтобы пропустить соответствующую строку. выбор 1 автоматически пропустит первую строку. Для тех, у кого могут быть заголовки в файлах excel
Если таблица уже была создана, и Вы были достаточно ленивы, чтобы не указывать столбцы в полях ввода имен, то все, что вам нужно сделать, это выбрать пустые столбцы справа от содержимого файла и удалить их.
У меня была аналогичная проблема с phpmyAdmin. Количество столбцов в импортируемом файле соответствует столбцам в целевой таблице базы данных. Я попытался импортировать файлы в обоих .csv и .формат ods безрезультатно, получая множество ошибок, включая один аргумент, что количество столбцов было неправильным.
Как .csv и .файлы ods были созданы с помощью LibreOffice 5.204. Основываясь на небольшом опыте с проблемами импорта в прошлые годы, я решил переделать файлы с помощью gnumeric электронная таблица, экспорт .СОД в соответствии со стандартом "строгого" формата. Вуаля! Больше нет проблем с импортом. Хотя у меня не было времени исследовать проблему дальше, я подозреваю, что что-то изменилось во внутренней структуре вывода файла LibreOffice.
при возникновении ошибок с входными файлами любого типа,проблемы с кодировкой общие.
простым решением может быть открытие нового файла, копирование вставки в него текста CSV, а затем сохранение его как нового файла.
последний столбец моей базы данных (это столбец F в электронной таблице) не используется и поэтому пуст. Когда я импортировал файл CSV excel, я получил ошибку "количество столбцов".
Это потому, что excel сохранял только столбцы, которые я использую. А-Е
добавление 0 в первую строку в F решило проблему, затем я удалил ее после успешной загрузки.
надеюсь, это поможет и сэкономит кому-то еще время и потерю волос:)
самая тупая вещь, которая когда-либо исправит эту ошибку в Microsoft Excel (при условии, что у вас действительно есть все остальное):
выберите данные и нажмите "границы все" в Excel (ставит визуальные границы вокруг ваших данных) перед сохранением CSV. Звучит бессмысленно? Я полностью согласен! Однако он исправит эту ошибку. Я использую этот трюк, по крайней мере, три раза в неделю.