[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Экспорт данных из txt в MySQL
max.schrank
Здравствуйте.
Помогите пожалуйста советом новичку. Ситуация следующая: есть тектовый файл, в котором примерно 5500 строк, каждая строка содержит 18 значений, разделенных символом "|". Стоит задача перевести эти данные в таблицу БД MySQL таким образом, чтобы каждая строка стала отдельной записью. Полей соответственно - 18.
Вначале сделал цикл for и на каждой итерации использовал INSERT. В результате длительной обработки скрипта все строки не успевают загрузиться в базу.
Тогда начал копать инэт и нашел LOAD DATA INFILE.
Но вот беда - не работает. Можете подсказать, как быть.

$link = mysql_connect($db_server, $db_login, $db_password);
mysql_select_db($db_table, $link);
$query = "LOAD DATA INFILE 'file1.txt' INTO TABLE `users_data` FIELDS TERMINATED BY '|' LINES TERMINATED BY '\r\n'";
mysql_query($query, $link);


Файл file1.txt лежит в той же директории, что и скрипт.
В чем ошибка?



Спустя 45 минут, 54 секунды (2.03.2010 - 01:24) waldicom написал(а):
Цитата (max.schrank @ 1.03.2010 - 23:38)
В чем ошибка?

Вот именно, в чем ошибка?
Можно узнать так:
mysql_query($query, $link) or die(mysql_error()); 

Спустя 7 часов, 46 минут, 41 секунда (2.03.2010 - 09:11) max.schrank написал(а):
Большое спасибо))
Ситуация для меня тем не менее остается плачевной, ибо ошибка вот в чем:
Цитата
The used command is not allowed with this MySQL version

А работу надо сегодня-завтра сдавать заказчику хотя бы в каком-то виде.

Может есть какие-то аналогичные методы для построчного переноса данных из *.txt в таблицу?

Или может быть можно как-то задать время обработки скрипта так, чтобы все данные заносились циклом с INSERT (потому как ограничений по времени у меня нет, а загрузка данных происходит редко)?

Спустя 5 минут, 50 секунд (2.03.2010 - 09:17) sergeiss написал(а):
Цитата (max.schrank @ 2.03.2010 - 10:11)
Или может быть можно как-то задать время обработки скрипта так.......

В ПХП: set_time_limit(0).

А версия MySQL какая?

Спустя 41 минута, 6 секунд (2.03.2010 - 09:58) max.schrank написал(а):
Цитата
В ПХП: set_time_limit(0)

Спасибо. В условиях поставленной задачи этого оказалось достаточно для решения проблемы!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.