我正在使用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。我该如何解决?
答案 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查询的末尾。