保藏本站 保藏本站
真钱棋牌网主页 - 软件测验 - 常用手册 - 站长东西 - 技能社区
主页 > JavaScript > nodejs > 正文

主页 - PHP - 数据库 - 操作体系 - 游戏开发 - JS - Android - MySql - Redis - MongoDB - Win8 - Shell编程 - DOS指令 - jQuery - CSS款式 - Python - Perl

Access - Oracle - DB2 - SQLServer - MsSql2008 - MsSql2005 - Sqlite - PostgreSQL - node.js - extjs - JavaScript vbs - Powershell - Ruby

mongoose设置unique不收效问题的处理及怎样移除unique的束缚

前语

unique归于schema束缚验证中的一员,他的作用首要便是让某一个字段的值具有唯一性(不能重复)

坚持字段的唯一性运用type值: {type:String,unique:true,dropDups: true}

留意:mongoose一旦修正了数据存储的组织,数据库必定要重启,许多新手在设置一些特点不收效时都是这个原因

这儿说的重启,不是简略的封闭mongoose数据库服务器从头翻开,而是先将该数据库整个删去,然后再重启数据库服务

简略的schema特别用法示例

//导入模块

var mongoose = require('mongoose');

//衔接数据库
mongoose.connect('mongodb://localhost/itheima');

//创立schema

//schema第一个参数是咱们自界说的数据类型 第二个参数是办理schema默许的数据类型
var studentSchema = mongoose.Schema({
 name:{type:String,required:true},//数据类型为string,不能非空
 age:{type:Number,default:18},//数据类型为string,默许值18
 study_id:{type:Number,select:true},//学号,默许查询字段
 address:{type:String,lowercase:true},//地址,默许小写
 email:{type:String,match:RegExp(/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/)},//邮箱,正则表达式验证
 phone:{type:String,unique:true,dropDups: true}//电话号码唯一性
},{
  versionKey: false,//去掉版别锁 __v0

 timestamps: { createdAt: 'createTime', updatedAt: 'updateTime' }//主动办理修正时刻

});

//创立model

var student = mongoose.model('student',studentSchema);

//创立Entity

var zhangsan = new student({
 name:'zhangsan',//姓名有必要要有,不然会报错: name: Path `name` is required.
 address:'ZhongLiang',//字符串都会变成小写
 email:'a12345@qq.com',//邮箱格局不对,增加会报错 Path `email` is invalid (a12345qq.com).
 study_id:2017001,
 phone:'123456789'//在增加唯一性字段时,mongoose会先查询数据库一切的phone值,一旦发现该值已存在则会报错
});

//增加数据



student.create(zhangsan,function(err){

 if(err){
  throw err;
 }

 console.log('刺进成功' + zhangsan);

});

Mongoose 移除unique的束缚

程序中email最开端设置了unque束缚,导致email在此collection中无法重复刺进,现在想要移除unique束缚。

db.your_collection.dropIndexes();

总结

以上便是这篇文章的全部内容了,期望本文的内容对我们的学习或许作业具有必定的参阅学习价值,假如有疑问我们能够留言沟通,谢谢我们对真钱棋牌网的支撑。

mac中运用NVM办理不同node版别的办法详解
前语我们在开端本文的正文之前,主张我们先看看这篇文章:http://www.ystekkfj.com/article/73424.htm,这篇文章给我们具体介绍了关于node.js下运用nvm或许n来进行

nodejs操作mongodb的增修改查功用实例
本文实例叙述了nodejs操作mongodb的增修改查功用。共享给我们供我们参阅,具体如下:装置相关模块假如运用这个的话,你需求先自己装置一下他需求的

nodejs运用express获取get和post传值及session验证的办法
本文实例叙述了nodejs运用express获取get和post传值及session验证的办法。共享给我们供我们参阅,具体如下:获取get和post传值get的传值被放入了一个目标中r

本周排行

更新排行

强悍的草根IT技能社区,这儿应该有您想要的! 友情链接:b2b电子商务
Copyright © 2010 ystekkfj.com. All Rights Rreserved  京ICP备05050695号