Почему значения NA, вставленные в postgresql, не преобразуются в NULL? - PullRequest
0 голосов
/ 27 января 2020

У меня есть строка кода примерно так:

query <- "INSERT INTO my_books (title, subtitle, content) VALUES ($1,$2,$3)"
data_to_be_inserted <- c("hello", NA, "world")
dbExecute(db_connection_to_postgresql, query, data_to_be_inserted)

При этом значения в БД:

SELECT * FROM my_books;

id title    subtitle  content
1  "hello"  "NA"      "world"

вместо:

SELECT * FROM my_books;

id title    subtitle  content
1  "hello"  NULL      "world"

Почему это?

1 Ответ

1 голос
/ 27 января 2020

Это потому, что вы не вставили NULL, но NA.

Вы можете использовать

query <- "INSERT INTO my_books (title, subtitle, content) VALUES ($1, nullif($2, 'NA'), $3)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...