Я запускаю инструкцию SQL для чтения в CSV-файле (в данном случае только 1 столбец с заголовком) и импортируя его в мою базу данных, где дальнейшие манипуляции с данными будут происходят через последующие операторы SQL.MySQL LOAD DATA INFILE Выполнение запроса выполняется успешно, но нет вывода
Однако я, похоже, не могу загрузить файл CSV в свою БД как непосредственно в MySQL Workbench, так и на моем PHP-сайте локально, а также на другом Mac в моей сети через веб-сайт PHP.
Интересно, что запрос запускается успешно, так как я не получаю никаких ошибок на каких-либо платформах или компьютерах, но никаких строк не влияет.
Я много сделал для того, чтобы решить проблему. Вот мой текущий код SQL, и я расскажу, что я пробовал.
LOAD DATA INFILE '/Users/Josh/Desktop/testcsv.csv'
INTO TABLE joinTest
FIELDS
TERMINATED BY ','
ENCLOSED BY '"'
LINES
TERMINATED BY '\r\n'
IGNORE 1 LINES
(interestName);
Так что это я пытаюсь использовать его в Workbench MySQL. В PHP у меня есть загрузчик и переменная, которая хранит расположение файла tmp. Это работает так, как будто вышло, и все выглядит хорошо.
Я попытался запустить его как
LOAD DATA INFILE
Но она по-прежнему не влияет на какие-либо строки (работает успешно). Я также изменил TERMINATED BY
на LINES
до \n
, но все равно не повлияет на любые строки.
Я не могу понять, почему это не влияет на какие-либо строки, так как мой CSV-файл читается всеми и должен быть в правильном формате (создан в Excel и сохранен как формат cvs).
Кто-нибудь знает, что может быть потенциальной проблемой?
Если вам нужна дополнительная информация, я отвечу на него как можно скорее. Благодарю.
Я думаю, что excel сохраняет файл с точкой с запятой ";" как разделитель, попробуйте изменить это в вашем sql – baao
Привет Майкл, к сожалению, это не работает, просто попробовал и получил тот же результат, успешный запрос, но не затронул ни одной строки. –