txt->mysql обработка полей

Pegas

Новичок
txt->mysql обработка полей

есть текстовый файлc с полями следующего вида:

труба|1/2"|12|50.00

Вопрос! Как прописать FIELDS, чтобы обрабатывалось поля такого вида, вот такая функа чего-то не пашет:

function list_file($file_db, $usertable)
{
$path=$_SERVER['DOCUMENT_ROOT'].$file_db;
$result=mysql_query("LOAD DATA INFILE '$path'
INTO TABLE $usertable
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
(text1, text2, text3, text4);");
}

ЗЫ. Если бы не эти дюймы, то такая функа работала бы:
function list_file($file_db, $usertable)
{
$path=$_SERVER['DOCUMENT_ROOT'].$file_db;
$result=mysql_query("LOAD DATA INFILE '$path'
INTO TABLE $usertable
FIELDS TERMINATED BY '|'
OPTIONALLY ENCLOSED BY ''
LINES TERMINATED BY '\n'
(text1, text2, text3, text4);");
}

Заранее благодарен за помощь.
 

Tor

Новичок
function list_file($file_db, $usertable)
{
$path=$_SERVER['DOCUMENT_ROOT'].$file_db;
$result=mysql_query("LOAD DATA INFILE '$path'
INTO TABLE $usertable
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\n'
(text1, text2, text3, text4);");
}

???
 

Pegas

Новичок
это ответ?

-~{}~ 21.04.05 11:18:

так не работает, дюймы не пишет, а если мне к примеру понадобится вот такой формат:

труба|1/2"; 3/4"|12|50.00
 

Tor

Новичок
давай кто-то не будет менять условия задачи по ходу, а?
 

Pegas

Новичок
ок. но все равно даже если использовать твой вариант, дюймы, которые указаны кавычками не пишутся.... есть конечно выход проверять файл и заменять все кавычки на два апострофа, но это .... :)
 

Tor

Новичок
function list_file($file_db, $usertable)
{
$path=$_SERVER['DOCUMENT_ROOT'].$file_db;
$result=mysql_query("LOAD DATA INFILE '$path'
INTO TABLE $usertable
FIELDS TERMINATED BY '|'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
(text1, text2, text3, text4);");
}
 

Pegas

Новичок
и перед кавычками ставить слеш?
труба|1/2\"; 3/4\"|12|50.00

-~{}~ 21.04.05 11:52:

не работает. синтаксическая ошибка. пишет:
You have an error in your SQL syntax near '' (text1, text2, text3, text4)' at line 5
 

untied

Сдвинутый новичок
Товаришч!
Если тебе просто нужно однократно прочитать текстовой файл с данными и загнать их в БД, то, вероятно, функа explode() может помочь в этом деле.
 

Tor

Новичок
untied

это как раз и неправильное решение
если мускул может самостоятельно глотать форматированные файлы, то нет никакой необходимости прикручивать к этому пхп
 

untied

Сдвинутый новичок
Автор оригинала: Tor
untied

это как раз и неправильное решение
если мускул может самостоятельно глотать форматированные файлы, то нет никакой необходимости прикручивать к этому пхп
OFF:
Ясен пень, что неправильное. Но если надо сделать это однократно, а файл с данными небольшой, то почему бы не сделать. Тем более, что получится быстрее.
Короче, когда религия запрещает, но очень хочется -- то можно.
 

Pegas

Новичок
на серваке запрещено право FILE. ответ напрашивается сам... - через INSERT INTO...
 
Сверху