Я использую JavaScript и PostgreSQL, и мне интересно, правильно ли написан код и синтаксис, потому что я получаю странные ошибки в разных ситуациях.
Пример:
function putDbEvents({ description, creatorId, attendeeId }) {
return pool
.query('INSERT INTO events (${description}, ${creatorId}), ${attendeeId}')
.then(() => pool.end())
.catch(console.log);
}
Мои вопросы:
INSERT INTO events ('description', creatorId, attendeeId) VALUES then (${}...
Это код таблицы создания:
const createEventsRes = await pool.query(
"CREATE TABLE IF NOT EXISTS events (id serial PRIMARY KEY, description TEXT, creatorId INTEGER, attendeeId INTEGER)"
);
Я хочу создать таблицу, поэтому каждый раз, когда вы добавляете что-то, она должна автоматически добавлять к ней идентификатор, и вы просто передаете описание, id, id, а четвертый - необязательный, поэтому не нужен в этом случае, и хотите, чтобы синтаксис правильно.
Вам нужно указать столбцы при вставке:
INSERT INTO events (description, creatorid, attendeeid)
values (${description}, ${creatorId}), ${attendeeId})
Это хорошая практика. И это также необходимо, когда вы опускаете столбцы (в этом случае id
).
INSERT INTO events (description, creatorid, attendeeid) values (${description}, ${creatorId} ${attendeeId}
) .then (() => pool.end ()) .catch (console.log);}
Nvm, я решил это.
функция putDbEvents (описание, creatorid, attendeeid) {return pool.query (значения INSERT INTO events (description, creatorid, attendeeid) values ($1, $2, $3)
описание, creatorid, attendeeid). then (() => pool.end()).catch(console.log); } }