Как импортировать csv-файл в MySQL workbench?
у меня есть CSV-файл. Он содержит 1,4 миллиона строк данных, поэтому я не могу открыть этот csv-файл в Excel, потому что его предел составляет около 1 миллиона строк.
поэтому я хочу импортировать этот файл в MySQL workbench. Этот файл csv содержит столбцы типа
"Service Area Code","Phone Numbers","Preferences","Opstype","Phone Type"
Я пытаюсь создать таблицу в MySQL workbench с именем "dummy", содержащую столбцы, такие как
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
7 ответов:
Я думаю, вы пропустили прилагаемое предложение
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-файлу
в случае, если у вас есть меньший набор данных, способ достичь его с помощью графического интерфейса:
- откройте окно запроса
- SELECT * FROM [table_name]
- выберите Импорт в строке меню
- Нажмите кнопку Применить в правом нижнем углу под сеткой результатов
в навигаторе в разделе схемы щелкните правой кнопкой мыши схему / базу данных и выберите "мастер импорта табличных данных"
работает и для mac.
на данный момент невозможно импортировать 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"), и вы откроете новое окно. В этом новом окне, вы найдете значок "импорт".
вы можете использовать MySQL Мастер Импорта Табличных Данных