Альтернатива LOAD DATA INFILE

beg_mysql

Новичок
Альтернатива LOAD DATA INFILE

Необходимо файлик загнать в MySQL
LOAD DATA не поддерживается.

В файле разделители ;
Текстовые поля бурутся в кавычки (")
Если загонять через fgetcsv, то в тескстовых полях, в которых присутствует ' выдается ошибка
PHP:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Pb'Pr'
Как быть?
 

beg_mysql

Новичок
А причем здесь правило составление запросов.
С этим проблем нет.

Проблема в том, что не все строки текстового файла попадают в базу
 

sage

Новичок
какие кавычки используешь двойные (") или одинарные (')?
 

beg_mysql

Новичок
PHP:
$handle = fopen ("$f","r");
while ($data = fgetcsv ($handle, 10000, ";")) {
	$result = mysql_query("INSERT INTO $table (id, brand, model, opis, ....)
	VALUES ('".$data[0]."', '".$data[10]."', ....)
 

Wicked

Новичок
Ну допустим я просил не код, составляющий запрос, а сам составленный запрос. Ну ладно, и так достаточно...

А причем здесь правило составление запросов.
А притом, что ты им не следуешь. Соответственно, у тебя возникают ситуции, когда составляются неправильные запросы. А как работают неправильно составленные запросы? Правильно! Никак. А теперь подумай, почему...
... не все строки текстового файла попадают в базу
.
 

beg_mysql

Новичок
Wicked можешь указать где именно ошибка (как должно быть правильно)
 

beg_mysql

Новичок
Методом НТ попробовал mysql_real_escape_string - ошибок не выдает. Проверяю все ли строки попали в БД
 
Сверху