MongoDB数据库的基本概念:
1、可以有多个数据库;
2、一个数据库中可以有多个集合(表);
3、一个集合中可以有多个文档(表记录)
3、文档结构很灵活,没有任何限制;
结合node.js基本操作:
1、连接数据库:
var mongoose =require('mongoose')
var Schema=mongoose.Schema
//连接数据库
//指定连接的数据库不需要存在,当你插入第一条数据之后就会自动被创建出来:
mongoose.connect('mongodb://localhost/itcast')
//设计集合结构(表结构)
//字段名称就是表结构中的属性名称
//
var blogSchema =new Schema ({
title:String,
data:{type:Data,default:Data.now},
username:{
type:String,
required:true //添加约束
}
})
//将文档结构发布为模型:
//mongoose.model方法就是用来将一个架构发布为model
//第一个参数:传入一个大写名词单数字符串用来表示你的数据库名称,mongoose会自动将大写名词的字符串生成小写复数的集合名称,例如这里的User最终会变成users集合名称
var User=mongoose.model('User',userSchema)
//4、当我们有了模型构造函数之后,就可以使用这个构造函数对users集合中的数据进行操作:
var admin=new User({
username:'admin',
passord:'12345',
email:'admin@admin.123'
})
//新增:
admin.save(function(err,ret){
if(err){
console.log('保存失败')
}else{
console.log('保存成功')
}
})
//查找数据:
admin.find({name:'zs'},function(err,ret){
if(err){
console.log('查找失败')
}else{
console.log('查找成功')
}
})
//删除数据:
admin.remove({name:'zs'},function(err,ret){
if(err){
console.log('删除失败')
}else{
console.log('删除成功')
}
})
//更新数据:
admin.findByIdAndUpdate({name:'zs'},function(err,ret){
if(err){
console.log('更新失败')
}else{
console.log('更新成功')
}
})