LOAD DATA INFILE

_Leonchik_

Новичок
LOAD DATA INFILE

Из мана: 12.2.5. LOAD DATA INFILE Syntax
PHP:
LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    INTO TABLE tbl_name
    [CHARACTER SET charset_name]
    [FIELDS
        [TERMINATED BY 'string']
        [[OPTIONALLY] ENCLOSED BY 'char']
        [ESCAPED BY 'char']
    ]
    [LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number LINES]
    [(col_name_or_user_var,...)]
    [SET col_name = expr,...]
и мой скрипт:
PHP:
LOAD DATA LOW_PRIORITY INFILE '...path/location.txt' REPLACE INTO TABLE location CHARACTER SET utf8 FIELDS TERMINATED BY '|,|' LINES TERMINATED BY '|end|'
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 'CHARACTER SET utf8 FIELDS TERMINATED BY '|,|' LINES TERMINATED BY '|end|'' at line 1; KOD: 1064

В чем не коректен синтаксис c CHARACTER SET utf8? Без него работает.
 

_Leonchik_

Новичок
SELECT version( ) ;
5.0.27-community-nt

-~{}~ 12.11.07 16:01:

смотрел и для 5.0 и для 5.1, но разницы невижу.

-~{}~ 12.11.07 16:04:

из базы SELECT INTO OUTFILE (cp1251) , и далее в др. базу (utf8) LOAD DATA INFILE. поэтому, я так понимаю, мне это и надо, но не выходит.
 

Gas

может по одной?
The character set indicated by the character_set_database system variable is used to interpret the information in the file. SET NAMES and the setting of character_set_client do not affect interpretation of input. Beginning with MySQL 5.0.38, if the contents of the input file use a character set that differs from the default, it is possible (and usually preferable) to use the CHARACTER SET clause to specify the character set of the file.
5.0.38 под рукой нет, на 5.0.37 тоже syntax error
 

_Leonchik_

Новичок
так и че делать то?
Попробую перед селектом выполнять SET NAMES utf8 и может быть не надо будет в данном запросе указывать кодировку. незнаю.
 

Gas

может по одной?
пишут же что SET NAMES и character_set_client не играю роли в данном случае, а учитывается character_set_database system variable
 

_Leonchik_

Новичок
нет, нет. я имел в виду перед выполнением селекта, чтобы даные были в файле уже в утф-е.
Я переконвертировал фал и исполнил скрипт. данные сунулись в базу как надо.
 
Сверху