Node.js使用Sequelize ORM框架

最近在学习Node.js,想尝试使用mysql数据库进行数据操作,但是习惯了java的ORM框架后懒得写SQL语句了,于是找到了Sequelize这个ORM框架

使用这个框架只要在项目路径下npm install Sequelize 然后加载模块就行了

这里附简单的一些增删查改操作

var DbStore = require('./BasicModel');
var Sequelize = require("sequelize");
//定义类
function UserBean(username, password) {
    this.username = username;
    this.password = password;
}
module.exports = UserBean;
//定义数据库模型
var User = DbStore.define('User', {
    id: {type: Sequelize.INTEGER, autoIncrement: true, primaryKeys: true, unique: true},
    username: {type: Sequelize.STRING, allowNull: false},
    password: {type: Sequelize.STRING, allowNull: false}
});
User.sync().on('success',function () {
    console.log('aa..');
}).on('failure', function () {
    console.log('bb..');
});
//增加字段
UserBean.builds = function (username, password, succCb, errCb) {
    User.build({username: username, 'password': password}).save().on('success',function (msg) {
        console.log(msg);
        if (!!succCb) {
            succCb(msg);
        }
    }).on('failure', function (err) {
            console.log(err);
            if (!!errCb) {
                errCb(msg);
            }
        });
}
//查找字段
UserBean.finds = function(username,callback){
    User.find({where:{username:'s'}}).success(function(res){
        console.log(res);
            if(!!callback){
            callback(res);
            }
        });
}
UserBean.findById =  function(id,callback){
    User.find(id).success(function(res){
        console.log(res);
        if(!!callback){
            callback(res);
        }
    });
}
UserBean.findByUsernameAndPassword=function(username,password,callback){
    User.find({where:{username:username,password:password}}).success(function(data){
        if(!!callback){
            callback(data);
        }
    });
}
UserBean.findAndCountAll = function(callback){
   User.findAndCountAll({
        where: ["username LIKE 's%'"],
        offset: 10,
        limit: 2
    })
        .success(function(result) {
            callback(result);
        });
}
//修改字段
UserBean.update = function(id,data ,callback) {
    User.find(id).success(function(res){
        if(res){
            res.updateAttributes(data).success(function(){
                callback('error');
        })
        }else{
            callback('error');
        }
    })

}
//删除字段
UserBean.delete = function(id,callback){
    User.find(id).success(function(res){
        if(res){
            res.destroy().success(function(){
                    callback("ok");
            }).error(function(err) {
                    callback(err);

        });
        }
        else{
            callback("nofound");
        }
    });
}

你可能感兴趣的:(node)