创建后使用续集原始查询获取记录

时间:2019-05-15 15:27:52

标签: javascript sql node.js postgresql sequelize.js

我正在使用sequelize进行迁移。在这里,我执行带有以下选项的INSERT查询,但它没有返回创建的记录:

const res = oldUsers.map(u => sequelize.query(
        `INSERT INTO ${LP_LOCATIONS_TABLE} (name, address, city) 
          VALUES (
         '${u.email}', '${u.address}', '${u.city}');`,
        { type: DataTypes.QueryTypes.INSERT, raw: true },
      ))

输出是一个数组,如下所示:

[ [[0],[1]] ] 

我希望创建记录器。特别是PK。我该如何解决?

2 个答案:

答案 0 :(得分:0)

您可能必须在doc中指定选项returning:true才能实现此目的。我使用mySql,所以无法测试(返回选项仅适用于postgres)。

答案 1 :(得分:0)

我忘记将mongoengine.connect( db=config.main_db, host=config.host, #username=config.username_admin, #password=config.password_admin, #authentication_source=config.authSource_admin, #authentication_mechanism=config.authenticationMechanisms) DATABASES = { 'default': { 'ENGINE': 'djongo', 'NAME': config.main_db, # 'USER': config.username_admin, # 'PASSWORD': config.password_admin, # 'HOST': config.host, # 'PORT': config.port, } } 放在原始SQL查询的末尾。