gpt4 book ai didi

node.js - 使用 sequelize 进行简单选择时的数据库错误

转载 作者:行者123 更新时间:2023-12-03 22:22:39 24 4
gpt4 key购买 nike

我对我的 postgres 数据库有一个简单的查询,是通过电子邮件向用户进行的简单选择。我将 node.js 与 express.js 和 sequelize 一起使用。

我不知道为什么向我抛出错误,并且消息非常糟糕,这是错误:

"message": {
"name": "SequelizeDatabaseError",
"parent": {
"name": "error",
"length": 104,
"severity": "ERROR",
"code": "42P01",
"position": "97",
"file": "parse_relation.c",
"line": "1180",
"routine": "parserOpenTable",
"sql": "SELECT \"id\", \"email\", \"password\",
\"created_at\" AS \"createdAt\", \"updated_at\" AS \"updatedAt\" FROM
\"users\" AS \"user\" WHERE \"user\".\"email\" = 'kmilo93sd@gmail.com'
LIMIT 1;"
},

这是我的用户模型:
const User = database.define('user',{
id: {
type: sequelize.STRING,
primaryKey: true
},
email: sequelize.STRING,
password: sequelize.STRING
});

module.exports = User;

这是我的 Sequelize 配置:
module.exports = new Sequelize(
process.env.database_name,
process.env.database_user,
process.env.database_password,
{
host: process.env.database_host,
dialect: process.env.database_dialect,
define: {
underscored: true
},
pool: {
max: 5,
min: 0,
idle: 10000
}
}
);

这是我的sql:

CREATE TABLE "users" (
"id" varchar(36) NOT NULL,
"email" varchar(30) NOT NULL UNIQUE,
"password" varchar(200) NOT NULL,
"created_at" TIMESTAMP NOT NULL,
"updated_at" TIMESTAMP NOT NULL,
CONSTRAINT users_pk PRIMARY KEY ("id")
) WITH (
OIDS=FALSE
);

我该如何解决这个问题,这是什么错误?

最佳答案

postgresql 中的 42P01 错误是 UNDEFINED TABLE 。因此该表在您的服务器上不存在。您正在尝试从不存在的表中提取 SELECT

关于node.js - 使用 sequelize 进行简单选择时的数据库错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56818815/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com