Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как использовать LOAD DATA
 
 автор: win-ni   (19.08.2008 в 20:36)   письмо автору
 
 

Здравствуйте !
Подскажите, пожалуйста, как правильно вводить данные в таблицу из
текстового файла, где поля отделены знаком табуляции. Вроде бы
для этого используют команду LOAD DATA.
(У меня есть Самоучитель MySQL5 М.Кузнецова и И.Симдянова 2006г)
Написал:
{ //10 Читать файл в таблицу - не работает
$sel_tab2="testo1";
$in_file= "c:/tempo/test3.txt";
$qq= "LOAD
DATA LOCAL
INFILE
$in_file
INTO
TABLE
$sel_tab2";
include_once ("funct_query.inc");
$rez= my_query($host,$sql_user,$sql_pass,$database, $qq);
} //10
Сообщение:
func_query.db_query: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

'c:/tempo/test3.txt INTO TABLE testo1' at line 4

Запрос= LOAD DATA LOCAL INFILE c:/tempo/test3.txt INTO TABLE testo1
Вариант INFILE '$in_file' - пробовал. Пробовал помещать файл test3.txt в папку
где эта БД (работаю локально, Denwer3) тогда $in_file= "test3.txt";
(по аналогии с
$sel_tab= $_REQUEST["sel_tab"];
$out_file="out.txt";
$qq = "SELECT * INTO OUTFILE '$out_file'
LINES TERMINATED BY '\r\n'
FROM $sel_tab";
- где результат - в папке БД - работает нормально.
)

Забыл еще:
привелегии глобальные: FILE, SHOW DATABASES,
на конкретную базу - ALL
размер этого файла 2100 б.

  Ответить  
 
 автор: Win-ni   (20.08.2008 в 14:31)   письмо автору
 
   для: win-ni   (19.08.2008 в 20:36)
 

{ //10 Читать файл в таблицу - уже работает
include_once ("funct_vxod.inc");
$conn= vxod($host, $sql_user, $sql_pass, $database);
$qq= "LOAD DATA LOCAL INFILE '$in_file' INTO TABLE
$sel_tab2";
$result=mysql_query($qq, $conn);
$erra= mysql_error();
if (!($erra == ""))
echo
"<font color='#AA0000'>func_query.db_query:".mysql_error()."</font><br>";
else echo "успешно";
mysql_close($conn);
} //10

Нормально работает, можно еще добавить:
FIELDS TERMINATED BY ... и
LINES TERMINATED BY ...

Но причина ускользнула.

  Ответить  
 
 автор: GeorgeIV   (20.08.2008 в 18:17)   письмо автору
 
   для: Win-ni   (20.08.2008 в 14:31)
 

$qq= "LOAD DATA LOCAL INFILE  $in_file  INTO TABLE $sel_tab2";


$qq= "LOAD DATA LOCAL INFILE '$in_file' INTO TABLE $sel_tab2";


Найди одно отличие :-)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования