Вставьте NULL в postrge sql отметку времени - PullRequest
3 голосов
/ 01 февраля 2020

Я пытаюсь вставить значения из CSV-файла в мою базу данных postgresql. Это моя таблица:

CREATE TABLE AllocatedEICDetail (
  Id                                    SERIAL NOT NULL, 
  EntityCreatedAt                       timestamp(34) with time zone NOT NULL, 
  EntityModifiedAt                      timestamp(34) with time zone NOT NULL, 
  MRID                                  varchar(250), 
  DocStatusValue                        varchar(250), 
  AttributeInstanceComponent            varchar(250), 
  LongNames                             varchar(250), 
  DisplayNames                          varchar(250), 
  LastRequestDateAndOrTime              timestamp(7), 
  DeactivateRequestDateAndOrTime        timestamp(7), 
  MarketParticipantStreetAddressCountry varchar(250), 
  MarketParticipantACERCode             varchar(250), 
  MarketParticipantVATcode              varchar(250), 
  Description                           varchar(255), 
  EICParentMarketDocumentMRID           varchar(250), 
  ELCResponsibleMarketParticipantMRID   varchar(250), 
  IsDeleted                             bool NOT NULL, 
  CONSTRAINT PK_AllocatedEICDetail 
    PRIMARY KEY (Id));

и данные, которые я хочу вставить:

Id;EntityCreatedAt;EntityModifiedAt;MRID;DocStatusValue;AttributeInstanceComponent;LongNames;DisplayNames;LastRequestDateAndOrTime;DeactivateRequestDateAndOrTime;MarketParticipantStreetAddressCountry;MarketParticipantACERCode;MarketParticipantVATcode;Description;EICParentMarketDocumentMRID;ELCResponsibleMarketParticipantMRID;IsDeleted
47677;2019-04-01 09:26:51.2053104 +00:00;2019-04-01 09:26:51.2053104 +00:00;10T-1001-10010AS;A05;International;Tie Line Koman-KosovoB;L_KOM-KOSB;2018-10-31 00:00:00.0000000;NULL;NULL;;NULL;Tieline;NULL;10XAL-KESH-----J;0
47678;2019-04-01 09:26:51.2053104 +00:00;2019-04-01 09:26:51.2053104 +00:00;24X-LE-TRADING-N;A05;International;LE Trading a.s.;LE-TRADING;2013-12-18 00:00:00.0000000;NULL;SK;;SK2023878747;Trade Responsible Party;NULL;NULL;0

Но когда я пытаюсь вставить файл CSV в pgAdmin 4, я получаю эту ошибку:

ОШИБКА: недопустимый синтаксис ввода для отметки времени типа: «NULL» КОНТЕКСТ: COPY allocatedeicdetail, строка 2, столбец deactivaterequestdateandortime: «NULL»

Есть идеи?

1 Ответ

0 голосов
/ 01 февраля 2020

Сообщение об ошибке означает, что у вас есть литерал «NULL» (строка) во входных данных. Возможно, вам следует попробовать заменить их пустыми значениями, как показано ниже:

47677;2019-04-01 09:26:51.2053104 +00:00;2019-04-01 09:26:51.2053104 +00:00;10T-1001-10010AS;A05;International;Tie Line Koman-KosovoB;L_KOM-KOSB;2018-10-31 00:00:00.0000000;;;;;Tieline;;10XAL-KESH-----J;0
...