Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Борис Котов
Зарегистрирован: 12.02.2007 Сообщения: 6
|
Добавлено: Пн Фев 12 2007 19:26 Заголовок сообщения: Как занести данные из текстового файла в БД |
|
|
Есть текстовый файл вот одна строка из него :
14;Intel Pentium Processor-90;<a target="_blank" href="http://www.intel.com">Intel Corporation;<img src="../photos/none.jpg" width="286" height="172">;<img src="../photos/k16.jpg" width="112" height="64">;5320.60р.;0.00р.;34;Процессоры;FPU intern/Data 64(32)bit
Cache 16K, обратная запись;2200 Mission College Boulevard P.O.Box 5819 Santa ;Сокет;Socket 478;нет keywords;3425;0
надо все это дело занести в MySQL базу в определенную таблицу
разделитель тут как видно ";" внутри текста могкт встречаться и переводы строк и табуляция.
есть отличная команда LOAD DATA INFILE но что-то я немогу с ней разобраться ( что , как и зачем )
вот могу показать свои наработки . Может кто и подскажет где ошибка
Через запись построчно нехотелось-бы т.к. 65 тысяч записей это не быстро будет происходить.
$sql= "LOAD DATA LOW_PRIORITY INFILE 'prodgipers.txt' REPLACE INTO TABLE tablica FIELDS TERMINATED BY ';' ProductID,ProductName,cName
";
$result=mysql_query($sql);
Заранее спасибо |
|
Вернуться к началу |
|
 |
and3008
Зарегистрирован: 12.10.2001 Сообщения: 14893 Откуда: Н.Новгород
|
Добавлено: Чт Фев 15 2007 00:01 Заголовок сообщения: |
|
|
Неужели не понять, что далеко не все так просто.
У тебя в наличии кусок HTML. Вот и разбирай ее как по правилам HTML, а не как первокласник по разделителю ; |
|
Вернуться к началу |
|
 |
Alex_pm
Зарегистрирован: 26.08.2006 Сообщения: 55
|
Добавлено: Чт Фев 15 2007 13:15 Заголовок сообщения: |
|
|
По пробуй имя файла указать полностью типа
/usr/login/htdocs....
Вобщем узнай у хостинг провайдера путь к своей папке.
SQL-сервер ведь к твоему home никаким боком не касается |
|
Вернуться к началу |
|
 |
Борис Котов
Зарегистрирован: 12.02.2007 Сообщения: 6
|
Добавлено: Чт Фев 15 2007 16:55 Заголовок сообщения: |
|
|
and3008 писал(а): | Неужели не понять, что далеко не все так просто.
У тебя в наличии кусок HTML. Вот и разбирай ее как по правилам HTML, а не как первокласник по разделителю ; |
Браво
если не видим <?php --- значит HTML
даже я ламер в програмировании и то понялбы что это кусок из скрипта |
|
Вернуться к началу |
|
 |
Борис Котов
Зарегистрирован: 12.02.2007 Сообщения: 6
|
Добавлено: Чт Фев 15 2007 16:59 Заголовок сообщения: |
|
|
Alex_pm писал(а): | По пробуй имя файла указать полностью типа
/usr/login/htdocs....
Вобщем узнай у хостинг провайдера путь к своей папке.
SQL-сервер ведь к твоему home никаким боком не касается |
пути они почемуто не хотят говорить
но в панеле управления есть импорт/экспорт файлов
файло я туда закинул но что-то всеравно не пашет .
Именя полей вырубил ( или млжет надо наоборот все написать ? )
и поставил разделитель вконце каждой строки . |
|
Вернуться к началу |
|
 |
and3008
Зарегистрирован: 12.10.2001 Сообщения: 14893 Откуда: Н.Новгород
|
Добавлено: Чт Фев 15 2007 23:40 Заголовок сообщения: |
|
|
Чудо, <?php --- это уже обычно HTTP со стороны клиента. HTML - это текст, специально размеченный. И не надо путать теплое с мягким.
По теме:
Не надо ничего придумывать и ломать голову. Читаем официальные доки:
http://dev.mysql.com/doc/refman/5.0/en/load-data.html
Ниже следующее переводить? Или сами через www.translate.ru осилите?
If you specify no LINES clause, the defaults are the same as if you had written this:
LINES TERMINATED BY '\n' STARTING BY '' |
|
Вернуться к началу |
|
 |
Suslov
Зарегистрирован: 08.03.2006 Сообщения: 67
|
Добавлено: Чт Мар 08 2007 00:29 Заголовок сообщения: |
|
|
А накой тэги-то пихать в базу? Не проще ли при извлечении в html-ну их подставить? В этом плане возникат вопрос как средствами mysql пропарсить файлик и повырезать что нам не надобно? |
|
Вернуться к началу |
|
 |
|