简体   繁体   English

如何使用 NodeJs 从 postgres 返回 INSERT 命令中的所有数据

[英]How to return all the data in INSERT command from postgres using NodeJs

This query insert data into my users table in Postgress, however, some other data are autogenerated where INSERT command is used.eg userId which is primary key, isAdmin is boolean but default is false.此查询将数据插入到我在 Postgress 中的用户表中,但是,在使用 INSERT 命令的地方会自动生成其他一些数据。例如,userId 是主键,isAdmin 是布尔值,但默认值为 false。

How can i return all the data not just the inserted my data我怎样才能返回所有数据而不仅仅是插入我的数据

e.g
const quertStrings = INSERT INTO users(email, first_name,last_name, password)VALUES($1, $2, $3, $4);
const values = [email.toLowerCase(), first_name, last_name,  password]
try {
 const response = pool.query(queryStrings, values);
return response;
} catch(err) {
return error; 
}

If successful, userId, and isAdmin is auto-generated.如果成功,将自动生成 userId 和 isAdmin。 How can i return all the data both the auto-generated and inserted data.我如何返回自动生成的和插入的数据的所有数据。

Console.log(response);控制台日志(响应); gives

Result {
  command: 'INSERT',
  rowCount: 1,
  oid: 0,
  rows: [],
  fields: [],
  _parsers: [],
  _types:
   TypeOverrides {
     _types:
      { getTypeParser: [Function: getTypeParser],
        setTypeParser: [Function: setTypeParser],
        arrayParser: [Object],
        builtins: [Object] },
     text: {},
     binary: {} },
  RowCtor: null,
  rowAsArray: false }

These are some things that may help:这些是一些可能有帮助的事情:

  1. Add returning * to the end of the INSERT statement.将返回 * 添加到 INSERT 语句的末尾。

  2. userId should be auto-generated if you set it to serial.如果将其设置为串行,则应自动生成 userId。

  3. isAdmin should be auto-generated if you also gave it a default value.如果你还给它一个默认值,isAdmin 应该是自动生成的。

Goodluck!祝你好运!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM