Nodejs: разделить запрос строки на массовую вставку в postgis - PullRequest
0 голосов
/ 22 сентября 2019

В моем nodejs рабочем сервисе я использую секвестировать запрос строки, чтобы вставить массив в базу данных postgresql .Это мой объект массива, который я хочу вставить:

enter image description here

Я использую 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)

...