PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да върнете стойности на резултатите от заявката за вмъкване с помощта на помощници на pg-promise

Просто добавете RETURNING... клауза към генерираната заявка:

var h = this.collection.$config.pgp.helpers;
var query = h.insert(values, null, 'branch') + 'RETURNING pk_branchID';

return this.collection.one(query);

Трябва да имате голям обект там, ако искате автоматично да генерирате вмъкването. Пространство от имена помощници се оценява най-вече при генериране на многоредови вмъквания/актуализации, в който случай Набор колони се използва като статична променлива:

var h = this.collection.$config.pgp.helpers;
var cs = new h.ColumnSet(['col_a', 'col_b'], {table: 'branch'});
var data = [{col_a: 1, col_b: 2}, ...];

var query = h.insert(data, cs) + 'RETURNING pk_branchID';

return this.collection.many(query);

Обърнете внимание, че в този случай правим .many , тъй като се очакват 1 или повече редове/резултати. Това дори може да се трансформира просто в масив от идентификатори:

return this.collection.map(query, [], a => a.pk_branchID);

вижте:Database.map




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Създайте индекс с няколко колони, за да наложите уникалност

  2. Промяна на типа данни на колона на сериен

  3. Знак за нов ред на PostgreSQL

  4. Импортиране на файлове от PostgreSQL в R

  5. Конвертиране на Django от SQLite в PostgreSQL