В моем nodejs рабочем сервисе я использую секвестировать запрос строки, чтобы вставить массив в базу данных postgresql .Это мой объект массива, который я хочу вставить:
Я использую unnest
для извлечения объекта из моего массива, но как я могу выбрать конкретныйсвойство из неустановленного метода?Для теста я просто хочу добавить nid, так что это мой метод массовой вставки:
async function bulkInsert(datas) {
return new Promise((resolve, reject) => {
let values = [];
Object.keys(datas).forEach(key => {
values.push(JSON.parse(datas[key]))
});
let strpgsql =
`INSERT into public."sub_data" ("nid")
VALUES ('unnest(${values.nid})')`
sequelize.pgsql.query(strpgsql);
});
}
Когда я запускаю свой метод, я получаю эту ошибку?
Executing (default): INSERT into public."sub_data" ("nid")
VALUES ('unnest(undefined)')
sequelize.js:1187
Unhandled rejection SequelizeDatabaseError: invalid input syntax for type uuid: "unnest(undefined)"
Примечание:Я должен использовать запрос строки, потому что я должен изменить свойство wkt на geometry
тип этой командой ST_GeomFromText('${req.wkt}' ,4326)