몽구스의 이상한 행동에 직면하고 있습니다.몽구스는 데이터베이스 만 쿼리 할 수 없습니다.
이 간단한 바보 같은 코드를 분석해 보겠습니다.
var mongoose = require('mongoose');
mongoose.connect('mongodb://127.0.0.1/sodatest', {
useMongoClient: true
});
var db = mongoose.connection;
var OriginalSchema = mongoose.Schema({
addedd: Date,
endPoint: Object,
inserted: Number,
total: Number
});
var OtherTestSchema = mongoose.Schema({
what: String,
modified_at: Date
});
var EndPointInTheDb = mongoose.model('aaa', OriginalSchema);
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log("we are connected!");
});
EndPointInTheDb.find({}, (err: String, exit: any) => {
console.log("Errore : " + err)
console.log(exit)
});
그것은 실패하고 수집 "AAA는"15 개 요소를 가지고 있기 때문에 그것은 실패
we are connected!
*********************
Error : null
[]
*********************
돌아갑니다.
다른 이름 (소문자 이름이있는 다른 이름 제외)을 사용하여 db "sodatest"를 변경하고 다른 모음 이름을 'aaa'로 변경하면 올바른 대소 문자를 사용하면 문제가 발생하지 않습니다. 결과.
we are connected!
*********************
Error : null
[ { _id: 59f76203592b426a16b8b32f,
modified_at: 2017-10-30T17:31:47.622Z,
last_position: 5,
what: 'CONTATOREGEOKEY',
__v: 0 } ]
*********************
나는 또 하나의 DB를 복사하려고했습니다
(그것은 여러 요소와도 작동), 적어도 대문자 문자와 이름
db.copyDatabase("sodatest","Prova14")
(Prova14) 그러나 다시는 결과가 없습니다.
이름을 잘못 입력했는지 몇 시간 동안 확인했지만 실제로는 확실합니다.
다른 스키마 (14 개의 다른 유형의 스키마가있는 스키마)와도 작동하는 이유를 이해할 수 없습니다. 스키마 ("OtherTestSchema")를 사용하면 컬렉션 실제 스키마와 일치하지 않습니다. 소다.
아이디어가 있으십니까?
'mongoose.set ('debug', true);'를 사용하여 디버그 모드를 켤 수 있습니다. 당신은 그것으로 무언가를 찾을 수 있습니다. – MikaS
몽구스 : aaas.find ({}, {fields : {}}) 이것은 "디버그"의 유일한 행이며, 작동중인 db와 작동하지 않는 db에서 동일합니다. I –
MongoBooster를 사용하여 수입 한 사실을 알 수 있습니까? 하지만 그것을 사용하여 어떤 문제없이 컬렉션을 쿼리 할 수 있습니다. "db.aaa.find ({})"제대로 작동합니다. –