PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Грешка при PG COPY:невалиден синтаксис на въвеждане за цяло число

ГРЕШКА:невалиден входен синтаксис за цяло число:""

"" не е валидно цяло число. PostgreSQL приема без цитати празните полета са нулеви по подразбиране в CSV, но "" би било като да напишеш:

SELECT ''::integer;

и се провалят поради същата причина.

Ако искате да се справите с CSV, който има неща като празни низове в кавички за нулеви цели числа, ще трябва да го подадете на PostgreSQL чрез предварителен процесор, който може да го оправи малко. CSV входът на PostgreSQL не разбира всички странни и прекрасни възможни злоупотреби с CSV.

Опциите включват:

  • Зареждането му в електронна таблица и експортирането на разумен CSV;
  • Използване на csv на Python модул, Perl Text::CSV , и т.н., за да го обработите предварително;
  • Използване на Perl/Python/каквото и да е за зареждане на CSV и вмъкване директно в DB
  • Използване на ETL инструмент като CloverETL, Talend Studio или Pentaho Kettle


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Разделете колоната на няколко реда в Postgres

  2. Грешка:Няма модул с име psycopg2.extensions

  3. Пулиране на връзки с Pgbouncer на PostgreSQL 9.0

  4. Как Cotd() работи в PostgreSQL

  5. Защо неподписано цяло число не е налично в PostgreSQL?