Как проверить строку, используемую для запроса к базе данных PostgreSQL? - PullRequest
0 голосов
/ 17 марта 2020

У меня есть функция, которая создает SQL запросов, используя два параметра: имя таблицы и столбцы и значения для запроса.

Как я могу проверить / санировать эти параметры (таблица, столбцы, значения )?

В настоящее время я импортирую файл JSON, содержащий мои таблицы и соответствующие им столбцы, и проверяю, находятся ли введенные значения в этом JSON объекте, что выглядит странно.

edit:

Я знаю, что узел- postgres выполняет санитарную обработку. Однако я хочу иметь возможность иметь необязательные параметры, такие как updated_at в приведенном ниже примере, без нескольких строковых запросов.

Это пример:

insert("users", {
  full_name: "John Smith",
  username: "jhsmith",
  email: "john.smith@email.com",
  created_at: "2019-08-18 21:26:43.237",
  updated_at: "2020-03-16 07:11:41.379"
});

Generates:

"INSERT INTO users
(full_name,username,email,created_at,updated_at)
VALUES ('John Smith','jhsmith', ...)"

1 Ответ

0 голосов
/ 17 марта 2020

Хорошо, ваша клиентская библиотека Node / Postgres должна обрабатывать экранирование / санацию для вас.

Используете ли вы пакет node-postgres? Затем вы можете использовать поток параметризованных запросов:

https://node-postgres.com/features/queries#Parameterized% 20query

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...