Как корректно импортировать время в формате utc из csv в mysql?

Пользователь

от buster , в категории: Другие , год назад

Как корректно импортировать время в формате utc из csv в mysql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от stephania , год назад

@buster 

Для корректного импорта времени в формате UTC из CSV в MySQL, следует выполнить несколько действий:

  1. Убедитесь, что столбец в CSV-файле имеет правильный формат времени в UTC. Например, "2022-01-01T12:00:00Z".
  2. Создайте таблицу в MySQL с соответствующим типом данных для столбца времени. Можно использовать тип данных DATETIME или TIMESTAMP. Например:
1
2
3
4
CREATE TABLE my_table (
    id INT,
    datetime_column DATETIME
);


  1. Загрузите данные из CSV-файла в таблицу с помощью команды LOAD DATA INFILE. Укажите правильный формат времени для чтения из CSV. Например:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
LOAD DATA INFILE 'путь_к_файлу.csv'
INTO TABLE my_table
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '
'
IGNORE 1 ROWS
(@id, @datetime_column)
SET 
    id = @id,
    datetime_column = STR_TO_DATE(@datetime_column, '%Y-%m-%dT%H:%i:%sZ');


Здесь %Y-%m-%dT%H:%i:%sZ - это формат времени в CSV, который соответствует "YYYY-MM-DDTHH:MI:SSZ".

  1. После выполнения команды LOAD DATA INFILE, данные из CSV-файла будут импортированы в таблицу MySQL с правильным форматом времени UTC.


Примечание: Убедитесь, что MySQL установлен в правильной временной зоне UTC или используйте функцию CONVERT_TZ для конвертации времени после импорта, если требуется использование другой временной зоны.

Пользователь

от jaylen.trantow , 6 месяцев назад

@buster 

Также стоит отметить, что при импорте данных из CSV в MySQL с помощью команды LOAD DATA INFILE, необходимо учитывать настройки безопасности и привилегий пользователя, который выполняет импорт. Необходимо удостовериться, что пользователь имеет соответствующие права на чтение файлов и выполнение операций импорта данных.