postgres: связь не существует, когда таблица явно существует при вызове из node.js - PullRequest
2 голосов
/ 23 апреля 2020

поэтому я psql 'd и создал пользователей таблицы;

 CREATE TABLE users (
    id integer NOT NULL,
    username text
);

Я могу захватить строки, выполнив SELECT * FROM users;

Однако, когда я использую node.js с библиотечный модуль pg для совершения звонков печально известного отношения не существует.

const createQuery = {text: "INSERT INTO users(id, username) VALUES($1)",values: values}
const { rows } = await db.query(createQuery);

Я не сталкивался с этой проблемой до полной миграции сервера.

Ответы [ 2 ]

0 голосов
/ 02 мая 2020


Привет,

По умолчанию, когда вы не указываете никакой схемы, postgres указывает на схему publi c. Пожалуйста, используйте имя схемы / имя базы данных вместе с именем таблицы. Убедитесь, что вы предоставили правильные конфигурации базы данных в вашем коде. Если настройки правильные и вам даже не нужно указывать псевдоним схемы в запросе.

Спасибо

0 голосов
/ 27 апреля 2020

Наиболее вероятным вариантом является то, что таблица была создана в другой схеме, чем схема по умолчанию, которую вы используете из node.js.

Вы можете найти схему, к которой принадлежит ваша таблица, запросив таблицу information_schema.tables* Предполагая, что имя схемы myschema, вы бы go:

INSERT INTO myschema.users(id, username) VALUES($1)
...