Heim >Web-Frontend >js-Tutorial >Ausführliche Erklärung, wie Sie das Problem lösen können, dass eindeutige Einstellungen in Mungo nicht wirksam werden, und wie Sie eindeutige Einschränkungen entfernen können
In diesem Artikel wird hauptsächlich die Lösung für das Problem vorgestellt, dass die eindeutige Einstellung in der Mongoose-Datenbank nicht wirksam wird, sowie ein Beispiel dafür, wie die eindeutige Einschränkung in Mongoose entfernt wird Beispielcode. Freunde, die ihn benötigen, können ihn unten nachschlagen.
Vorwort
unique ist ein Mitglied der Schema-Einschränkungsüberprüfung. Seine Hauptfunktion besteht darin, den Wert eines bestimmten Felds eindeutig zu machen (kann nicht wiederholt werden)
Zu Behalten Sie die Einzigartigkeit von Feldern bei und verwenden Sie Typwerte: {type:String,unique:true,dropDups:true🎜>
//导入模块 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 entfernt die EindeutigkeitsbeschränkungDie E-Mail im Programm legt zunächst die Eindeutigkeitsbeschränkung fest, was dazu führt, dass die E-Mail nicht wiederholt werden kann in diese Sammlung eingefügt, möchte nun die eindeutige Einschränkung entfernen.
db.your_collection.dropIndexes();Verwandte Empfehlungen:
Zwei Methoden zum Aktualisieren von Objekten durch Mongoose
Detaillierte Erläuterung der Implementierung der virtuellen Feldabfrage von Mongoose Methode
Node.js MongoDB-Treiber Mongoose Basic Usage Tutorial_node.js
Das obige ist der detaillierte Inhalt vonAusführliche Erklärung, wie Sie das Problem lösen können, dass eindeutige Einstellungen in Mungo nicht wirksam werden, und wie Sie eindeutige Einschränkungen entfernen können. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!