出于某种原因,需要创建数据库,但是怎么想觉得自己手动创建数据库又比较麻烦,于是就想到了自动创建。(nodejs db migrate入门)
node db-migrate
Database migration framework for node.js
一个Node.js的数据库迁移框架。
node db-migrate安装
1. 1) npm 安装
npm install db-migrate
2)package.json
添加
"db-migrate": "0.7.1"
再
npm install
node db-migrate
接着我们就开始一次简单的创建之旅
1.执行
db-migrate create add-user
便会生成
[INFO] Created migration at /Users/fdhuang/learing/freerice/migrations/20141022162921-add-user.js
2.打开编辑文件,默认的结果应该是这样子的
var dbm = require('db-migrate');
var type = dbm.dataType;
exports.up = function(db, callback) {
};
exports.down = function(db, callback) {
};
我们需要添加下面的字段,如id,name,password,email。于是就有了
var dbm = require('db-migrate');
var type = dbm.dataType;
exports.up = function(db, callback) {
db.createTable('user', {
id: { type: 'int', primaryKey: true },
name: type.STRING,
password: type.STRING,
email: type.STRING
}, callback);
};
exports.down = function(db, callback) {
db.dropTable('user', callback);
};
这样我们便完成了简单的功能,然而我们还需要一个database.json,于是就有了
3.修改package.json
{
"dev": {
"driver": "sqlite3",
"filename": "dev.db"
},
"test": {
"driver": "sqlite3",
"filename": "dev.db"
},
"prod": {
"driver": "sqlite3",
"filename": "dev.db"
}
}
4.执行迁移
db-migrate up
[INFO] Processed migration 20141022162921-add-user
[INFO] Done
5.查看数据库
因为这里用的是SQLite3,所以直接拿SQLitebrowser打开,可以看到相应的字段。
其他
对于这个库而言,需要指出的问题有
- 官方文档不详细
- 文档写得不细致
一个好的建议是:
看源代码