Импортировать CSV в SQL - с указанием даты и времени - PullRequest
0 голосов
/ 05 февраля 2019

В настоящее время я работаю над импортом CSV (с тысячами строк) в SQL.До сих пор я создал таблицу в SQL и заполнил ее именами столбцов, а также типами данных, соответствующими именам столбцов (все они соответствуют столбцам в csv)

В этом файле csv,один из столбцов содержит временную метку в виде: 3/2/2019 12:00:00 (ММ / ДД / ГГ ЧЧ: ММ: СС). В соответствующем столбце, созданном мной в sql, есть дата, если временная метка (6)

Мой следующий шаг - щелкнуть правой кнопкой мыши по таблице, которую я только что создал в SQL, и нажать «Импорт данных». Затем я выполняю шаги по импорту csv в sql, однако временные метки импортируются неправильно.Я знаю это, потому что все временные метки в csv относятся к 3 февраля 2019 года, а в SQL они варьируются от 20-МАР-02 в 19:00:05 (ДД-МЕС-ГГ ЧЧ: ММ: СС) до 20-APR-02 7:00:00 PM (ДД-ПН-ГГ ЧЧ: ММ: СС)

Я не знаю, как получить формат, соответствующий CSV (ММ / ДД / ГГЧЧ: ММ: СС) в SQL (ДД-МЕС-ГГ ЧЧ: ММ: СС)

Любая помощь приветствуется!Спасибо !!

Редактировать: @Sean Lange: Спасибо!Когда я пытаюсь использовать datetime (6) в качестве типа данных, я получаю сообщение об ошибке 00907: отсутствует правильная скобка?Если я пытаюсь просто datetime, я получаю ошибку 00902: неверный тип данных?Есть мысли?

Редактировать # 2: Да, я использую оракул, извините, язык на этих сайтах иногда смущает меня, потому что я все еще учусь.Любая помощь все равно была бы замечательной, проходя шаг за шагом, в частности

Правка № 3: Спасибо за вашу помощь.Извините еще раз за мое отсутствие знаний, я использую Oracle SQL Developer.После неправильного создания таблицы я набрал следующие строки кода:

изменить имя таблицы table

изменить имя столбца column_name to_timestamp (yourFieldName, 'mm / dd / yyyy hh: mi: ss am');

Однако мне выдали эту ошибку.

Отчет об ошибке - ORA-01735: недопустимая опция ALTER TABLE 01735. 00000 - «недопустимая опция ALTER TABLE»

Я действительноблагодарю вас за помощь, еще раз спасибо всем!

Я также пытался обновить для введите описание изображения здесь mat в мастере и получил ошибку.Приложены скриншоты, объясняющие, что я сделал

введите описание изображения здесь

Я не думаю, что фотографии работают, но ошибка говорит о том, что формат даты не был распознан.

1 Ответ

0 голосов
/ 05 февраля 2019

Вы не указали, какой клиент вы используете для подключения к базе данных Oracle - TOAD?Oracle SQL Developer?Что-то другое?... Поэтому я не могу дать вам конкретные пошаговые инструкции.

Однако ваша основная проблема заключается в том, что вам нужно преобразовать текстовую строку в метку времени, и для этого вам нужно ввестиВаша строка формата даты.Где-то в вашем мастере «Импорт данных» должен быть шаг (а) для ввода выражения или (б) для ввода формата даты.

Требуемая строка формата даты 'mm/dd/yyyy hh:mi:ss am' (без учета регистра, выможете использовать заглавные буквы, если хотите, или pm вместо am).

Выражение будет

to_timestamp(yourFieldName, 'mm/dd/yyyy hh:mi:ss am')
...