Node.js 如何在knex.js中连接、创建数据库、重新连接该数据库并创建表?
我正在使用knex.js。我有一个奇怪的计划。我不能确定我连接的MySQL数据库是否已经设置了我的数据库 因此,首先,我在不指定数据库的情况下进行连接。然后,我创建一个数据库并重新连接到该指定的数据库。之后,我想创建三个不同的表。但我一直收到一个Node.js 如何在knex.js中连接、创建数据库、重新连接该数据库并创建表?,node.js,promise,knex.js,Node.js,Promise,Knex.js,我正在使用knex.js。我有一个奇怪的计划。我不能确定我连接的MySQL数据库是否已经设置了我的数据库 因此,首先,我在不指定数据库的情况下进行连接。然后,我创建一个数据库并重新连接到该指定的数据库。之后,我想创建三个不同的表。但我一直收到一个错误:ER\u BAD\u DB\u错误:未知数据库“”。我有这个密码 knex.raw('CREATE DATABASE IF NOT EXISTS ' + database + ';' ).then(function() {
错误:ER\u BAD\u DB\u错误:未知数据库“”
。我有这个密码
knex.raw('CREATE DATABASE IF NOT EXISTS ' + database + ';'
).then(function() {
knex.destroy();
knexConnect.connection.database = database;
knex = require('knex')(knexConnect);
}).then(function() {
knex.schema.createTable('items', initializeItems
).catch(function (err) {
console.log(err);
});
knex.schema.createTable('lessons', initializeLessons
).catch(function (err) {
console.log(err);
});
knex.schema.createTable('reviews', initializeReview
).catch(function (err) {
console.log(err);
});
});
为了在建立重新连接和创建数据库后执行表创建命令,我需要做哪些更改?是否
需要('knex')(knexConnect)代码>回报承诺?我不这么认为。它不允许我附加。然后(…)
到require('knex')(knexConnect)
。