В каком формате должны быть данные, чтобы успешно вставить их в таблицу в базе данных Netezza с помощью RJDBC

Я пытаюсь вставить новые строки в пустую таблицу в БД, используя dbSendUpdate() из пакета RJDBC. Поля в таблице такие:

  • целое число(10)

  • варчар (255)

  • большой(19)

  • малыйинт(5)

  • двойной(15)

Столбцы в data.frame:

  • символ

  • числовой

  • инт

То, как я это делаю, я пытаюсь:

  • вставить числовое значение в double(15),

  • символ в varchar(255)

  • целое в маленькое (5)

  • числовое преобразование в bigint(19)

  • целые числа в целые (10)

Я экспортирую data.frame в csv и пытаюсь загрузить его в БД. Может ли кто-нибудь объяснить соответствие между типами столбцов R и SQL, чтобы их можно было вставить в БД?

Я получаю сообщение об ошибке External table count of bad input rows reached maxerrors limit, хотя R не дает мне информации о том, какой столбец/строка вызывает проблему. Я не очень хорошо разбираюсь в SQL, поэтому не знаю, куда копать.


person Claud H    schedule 09.10.2018    source источник


Ответы (1)


Я понял, что у меня есть столбцы символов с запятыми. Это испортило CSV-файл, поскольку символ запятой был разделителем, поэтому он больше не действителен. После того, как это было исправлено, я смог загрузить данные без проблем. Так что я думаю, что моя схема соответствующих типов была в порядке в конце концов

person Claud H    schedule 09.10.2018