Импорт CSV на MySQL 5.5 и форматирование даты - PullRequest
0 голосов
/ 17 января 2019

Мне нужно импортировать csv в мою базу данных mysql, но проблема в том, что один из столбцов имеет в качестве даты, а дата выглядит как дд / мм / гггг , поэтому перед импортом мне нужно преобразовать его в универсальный стандарт.

Это также должна быть вещь командной строки, ничего особенного или сложного, поскольку я собираюсь автоматизировать эту процедуру.

    LOAD DATA LOCAL INFILE 'C:\\myfile.csv'
    REPLACE INTO TABLE `audb`.`audit` 
    FIELDS TERMINATED BY ';' 
    LINES TERMINATED BY '\r\n' 
    IGNORE 1 LINES (
      @date`,
      `name`,
      `place`,
      `state`
    )
    set date = STR_TO_DATE(date, '%Y-%m-%d');

Ошибка:

/* SQL Error (1064): 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 ')
set date= STR_TO_DATE(date, '%Y-%m-%d')' at line 20 */

Как я могу это исправить?

Ниже приведен фиксированный код:

    LOAD DATA LOCAL INFILE 'C:\\myfile.csv'
    REPLACE INTO TABLE `audb`.`audit` 
    FIELDS TERMINATED BY ';' 
    LINES TERMINATED BY '\r\n' 
    IGNORE 1 LINES (
      @date`,
      `name`,
      `place`,
      `state`
    )
    set date = STR_TO_DATE(@date, '%Y-%m-%d');

Мне также нужно заменить определенную строку на 0 , как я могу использовать несколько SET в строке?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...