1

我有一个通过 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

4

1 回答 1

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 不会教你:)

你可以查看CodeCademy 之一,他们总是有很好的资源。

编辑:所以你创建了一个vinyl_information表(对 OP 的评论)。你的 Knex 命令应该是:

postgres
  .select('*')
  .from('vinyl_information')
  .then(data => console.log(data))

我有一个 Discord 服务器,我们互相帮助,如果您需要有关该主题的进一步帮助,请不要犹豫加入它 :) https://discord.gg/C2bVzgb

于 2019-05-14T19:39:50.307 回答