如何利用mongoose将数据写入mongodb数据库?
1.利用npm下载安装mongoose;
npm install mongoose
2.建立js文件,引入mongoose
var mongoose = require('mongoose');
3.mongoose.connect连接数据库
//连服务器
mongoose.connect('mongodb://127.0.0.1:27017/test'); //数据库的名字
var connection = mongoose.connection;
connection.on('error', function (err) {
console.error(err);
});
connection.on('open', function () {
console.log('opened');
});//判断是否连接上数据库
4.schema规定数据的格式,model定义数据集合名称,并引入schema的样式
//建立 schema
var monsterSchema = mongoose.Schema({
name: {type: String},
age: {type: Number, default: 1}, //设置默认值
gender: {type: Number, default: 1}, //约定:1.表示男妖怪,2表示女妖怪,
address: String,
skill: String //大招
});
//model 符合 schema
var monsterModel = mongoose.model('monster', monsterSchema);
5.使用entity和model两种方式写入数据
//需求: 1.使用 model 写入数据库
// 2.使用 entity 写入数据库
//定义黄眉怪
var yellow = {
name: 'yellow',
age: '2000', //设置默认值
gender: '1', //约定:1.表示男妖怪,2表示女妖怪,
address: '小西天',
skill: 'bag' //大招
};
//2.使用 entity 写入数据库
var entity = new monsterModel(yellow);
entity.save(function (err, doc) {
if(err){
console.error(err);
}else {
console.log(doc);
}
});
//引入
var mongoose = require('mongoose');
//连服务器
mongoose.connect('mongodb://127.0.0.1:27017/test'); //数据库的名字
var connection = mongoose.connection;
connection.on('error', function (err) {
console.error(err);
});
connection.on('open', function () {
console.log('opened');
});//判断是否连接上数据库
//建立 schema
var monsterSchema = mongoose.Schema({
name: {type: String},
age: {type: Number, default: 1}, //设置默认值
gender: {type: Number, default: 1}, //约定:1.表示男妖怪,2表示女妖怪,
address: String,
skill: String //大招
});
//model 符合 schema
var monsterModel = mongoose.model('monster', monsterSchema);
//需求: 1.使用 model 写入数据库
// 2.使用 entity 写入数据库
//定义黄眉怪
var yellow = {
name: 'yellow',
age: '2000', //设置默认值
gender: '1', //约定:1.表示男妖怪,2表示女妖怪,
address: '小西天',
skill: 'bag' //大招
};
//2.使用 entity 写入数据库
var entity = new monsterModel(yellow);
entity.save(function (err, doc) {
if(err){
console.error(err);
}else {
console.log(doc);
}
});
总结
以上所述是小编给大家介绍的Node.js中使用mongoose操作mongodb数据库的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程网网站的支持!