sql >> Database teknologi >  >> RDS >> PostgreSQL

PG COPY-fejl:ugyldig inputsyntaks for heltal

FEJL:ugyldig inputsyntaks for heltal:""

"" er ikke et gyldigt heltal. PostgreSQL accepterer uciteret tomme felter som null som standard i CSV, men "" ville være som at skrive:

SELECT ''::integer;

og fejler af samme grund.

Hvis du vil beskæftige dig med CSV, der har ting som citerede tomme strenge for null-heltal, bliver du nødt til at feed det til PostgreSQL via en præprocessor, der kan gøre det lidt pænt. PostgreSQL's CSV-input forstår ikke alle de underlige og vidunderlige mulige misbrug af CSV.

Indstillinger omfatter:

  • Indlæser det i et regneark og eksporterer fornuftigt CSV;
  • Brug af Python csv modul, Perl Text::CSV osv. for at forbehandle det;
  • Brug af Perl/Python/whatever til at indlæse CSV'en og indsætte den direkte i DB'en
  • Brug af et ETL-værktøj som CloverETL, Talend Studio eller Pentaho Kettle


  1. MIN() vs MINST() i MySQL:Hvad er forskellen?

  2. SQL Server-streng eller binære data vil blive afkortet

  3. Mysql::Fejl:Den angivne nøgle var for lang; max nøglelængde er 1000 bytes

  4. Sådan rettes "Konvertering mislykkedes ved konvertering af værdien til datatype" i SQL Server