2010-12-13 2 views
4

У меня есть следующий формат датыMySQL Вставка значение даты из текстового файла

28 Aug 2010 17:40:58 +0000 

Может кто-нибудь подскажет, как я идти о получении этого на дату или даты и времени типа при вставке в MySQL

Я импортируя из файла следующий путь.

load data local infile 'uniq.csv' into table tblUniq 
fields terminated by ',' 
enclosed by '"' 
lines terminated by '\n' 
(uniqName, uniqCity, uniqComments) 

Я не уверен, как обрабатывать значение даты, поэтому он будет правильно структурирован для mysql.

Благодаря

+0

Я не думаю, что вы можете преобразовать даты на лету. Можно ли добавить второй, пустой столбец в таблицу после импорта и преобразовать их в отдельный запрос? –

+0

Yup, изменение схемы не является проблемой. – Steve

ответ

2

Если вы не возражаете, с большим количеством предупреждений и потеря информации о часовом поясе (не в состоянии преобразовать часовой пояс), вы можете преобразовать выше ответ:

load data local infile 'uniq.csv' into table tblUniq ... 
(uniqName, uniqCity, uniqComments, @date_val) 
SET datetime_column=str_to_date(@date_val, '%d %b %Y %H:%i:%s'); 

ИЛИ

сделать этот столбец в varchar,
после загрузки данных в базу данных,
производить обновление update ... set column=str_to_date(column, '%d %b %Y %H:%i:%s')
и, наконец, изменить тип данных столбца DATETIME

+0

спасибо, обработал – Steve

2

Посмотрите here. Кажется, что они получили решение (кратко, идея заключается в том, чтобы добавить переменную в список столбцов, а затем установите значение столбца на основе отформатированного значения этой переменной:
load data local infile 'uniq.csv' into table tblUniq .....
(uniqName, uniqCity, uniqComments, @date_val)
SET datecolumn = date_format(str_to_date(@date_val, '%d-%M-%Y'), '%m/%d/%Y');

+0

Кажется, что не работает. – Steve

Смежные вопросы