Пытается импортировать данные из csv в базу данных Mysql с помощью mysql Workbench Table Data Import Wizard
. Csv содержит поле dattime в формате dd/mm/yyyy hh: mm: ss (например, 28/01/2017 10:55:00 PM). Если я по умолчанию по умолчанию, то workbench рассматривает datetime как тип данных TEXT и успешно импортирует данные. Однако, если я изменил тип данных на «DATETIME», импорт завершится с «0 импортированными записями».MySql Workbench csv Импорт Datetime DATATYPE как ТЕКСТ
ответ
Формат datetime для базы данных mysql: ГГГГ-ММ-ДД ЧЧ: MM: SS ... Ознакомьтесь с приведенной ниже документацией. Надеюсь, что это помогает ..... https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwjIyOHXvJvSAhWGtY8KHcsSB8MQFggdMAE&url=https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fen%2Fdatetime.html&usg=AFQjCNGc5DXXoRcxKpV46ARaMvjZVVL4ZA&sig2=kBy0FVFl_4feRkkfiPyoeg
Даты в формате dd/mm/yyyy
не являются стандартными, поэтому MySQL обрабатывает его как текст. И заставить его загружать такие данные, как datetime, также неверно.
Эта проблема хорошо подходит для LOAD DATA
вместе с функцией STR_TO_DATE()
, чтобы преобразовать строки даты в соответствующие сроки:
LOAD DATA INFILE 'input.csv'
INTO TABLE t1
FIELDS TERMINATED BY ','
(column1, @var1, column3, ...)
SET column2 = STR_TO_DATE(@var1,'%d/%m/%Y %h:%i:%s %p')
выше LOAD DATA
было бы целесообразно, если второй столбец в файле CSV содержатся данные о дате , Если нет, то просто перестройте его так, чтобы правильный столбец разбирался.