我有一个通过Postgresql创建的数据库。我正在尝试通过Knex.js连接到数据库。
在我的文本编辑器(原子)中,我需要使用knex
const knex = require('knex');
第二个-我已经开始像这样初始化库了:
const postgres = knex ({ client: 'pg', connection: { host: '127.0.0.1', port: '5432', user: 'is myself', password: '', database: 'mediumrare_database' } });
第三-我试图像这样从数据库中提取数据:
postgres.select('*').from('mediumrare_database).then(data => {console.log(data)});
最后,我收到的错误消息如下:
Unhandled rejection error: relation "mediumrare_database" does not exist
答案 0 :(得分:0)
您的数据库名为mediumrare_database
,而您试图从中获取数据的表也以相同的方式命名。
所以看来问题是您没有创建任何表。
在SQL中,您的Knex命令为:
SELECT * FROM mediumrare_database;
,即Return all the datas inside the 'mediumrare_database' table
。
您首先需要使用CREATE
指令创建数据库结构(用于存储数据的表)。参见https://knexjs.org/#Schema-createTable。
FROM
用于表,因为您已经在连接字符串中指定了要连接的数据库。
我只能建议您在使用Knex(SQL查询生成器)之前学习SQL的基础知识。如果您不了解底层系统和语言,则会遇到很多问题,因为Knex不会教您:)
您可以检查the one of CodeCademy,他们总是有很好的资源。
EDIT :因此,您创建了一个vinyl_information
表(OP上的注释)。您的Knex命令应为:
postgres
.select('*')
.from('vinyl_information')
.then(data => console.log(data))
我有一个Discord服务器,我们可以互相帮助,如果您需要有关该主题的进一步帮助,请随时加入它:) https://discord.gg/C2bVzgb