是否可以从数据库转储生成knex种子文件?

时间:2017-09-25 15:08:12

标签: mysql database postgresql migration knex.js

就我而言,我使用的是mysql。但是,我正在寻找从当前运行的数据库或数据库转储生成knex种子文件的一般解决方案。

我可以做something like

exports.seed = function(knex, Promise) {
    var sql = fs.readFileSync('./data/workbench.sql').toString();
    return knex.raw('DROP DATABASE workbench')
       .then(() => knex.raw('CREATE DATABASE workbench'))
       .then(() => knex.raw(sql))
};

但这并不理想......

1 个答案:

答案 0 :(得分:0)

AFAIK node-postgresql驱动程序不支持在一个字符串中传递多个语句。

当我需要从节点代码恢复文件中的转储时,我正在调用shell命令(带有shelljs)。