У меня есть файл CSV. Он содержит 1,4 миллиона строк данных, поэтому я не могу открыть этот CSV-файл в Excel, поскольку его ограничение составляет около 1 миллиона строк.
Поэтому я хочу импортировать этот файл в рабочую среду MySQL. Этот CSV-файл содержит такие столбцы, как
"Service Area Code","Phone Numbers","Preferences","Opstype","Phone Type"
Я пытаюсь создать таблицу в рабочей среде MySQL с именем «фиктивная», содержащую столбцы типа
ServiceAreaCodes,PhoneNumbers,Preferences,Opstyp,PhoneTyp.
Имя CSV-файла model.csv
. Мой код в верстаке выглядит так:
LOAD DATA LOCAL INFILE 'model.csv' INTO TABLE test.dummy FIELDS TERMINATED BY ',' lines terminated by '\n';
но я получаю сообщение об ошибке model.CSV file not found
Ответы:
Я думаю, вам не хватает предложения 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';
И укажите полный путь к файлу csv
Загрузить файл данных - документация MySQL
источник
'//path//to//your//csv//file//model.csv'
и все поля, содержащие одинарные косые черты, были разбиты.Если у вас меньший набор данных, способ добиться этого с помощью графического интерфейса:
Ссылка: http://www.youtube.com/watch?v=tnhJa_zYNVY
источник
В навигаторе SCHEMAS щелкните правой кнопкой мыши схему / базу данных и выберите «Мастер импорта табличных данных».
Работает и для Mac.
источник
Вы можете использовать мастер импорта данных таблицы MySQL
источник
В настоящее время невозможно импортировать CSV (с использованием MySQL Workbench) на всех платформах, и это не рекомендуется, если указанный файл не находится на том же хосте, что и хост сервера MySQL.
Однако вы можете использовать mysqlimport .
Пример:
mysqlimport --local --compress --user=username --password --host=hostname \ --fields-terminated-by=',' Acme sales.part_*
В этом примере
mysqlimport
предлагается загрузить все файлы с именем «sales» с расширением, начинающимся с «part_». Это удобный способ загрузить все файлы, созданные в примере с разделением. Используйте параметр --compress, чтобы минимизировать сетевой трафик. Параметр --fields-terminated-by = ',' используется для файлов CSV, а параметр --local указывает, что входящие данные находятся на клиенте. Без параметра --local MySQL будет искать данные на хосте базы данных, поэтому всегда указывайте параметр --local.Полезная информация по этому поводу содержится в документации AWS RDS .
источник
Если сервер находится на удаленном компьютере, убедитесь, что файл находится на удаленном компьютере, а не на вашем локальном.
Если файл находится на том же компьютере, где находится сервер mysql, убедитесь, что у пользователя mysql есть разрешения на чтение / запись файла, или скопируйте файл в каталог схемы mysql:
В моем случае в ubuntu это было: /var/lib/mysql/db_myschema/myfile.csv
Кроме того, не относящийся к этой проблеме, но если у вас есть проблемы с новыми строками, используйте sublimeTEXT, чтобы изменить окончания строк на формат WINDOWS, сохраните файл и повторите попытку.
источник
Это кажется немного сложным, поскольку меня это действительно беспокоило долгое время.
Вам просто нужно открыть таблицу (щелкните правой кнопкой мыши «Select Rows- Limit 10000»), и вы откроете новое окно. В этом новом окне вы найдете «значок импорта».
источник