인프런 커뮤니티 질문&답변

S G님의 프로필 이미지
S G

작성한 질문수

리액트로 나만의 블로그 만들기(MERN Stack)

(06) MongoDB Modeling(1)

스키마 질문

작성

·

167

0

스키마를 작성하고 

수정하고싶은데 에러가납니다

예를들어 유니크를 없애거나 하고싶은데

스키마는 한번작성하면 수정이안되나요?

답변 2

0

S G님의 프로필 이미지
S G
질문자

감사합니다!

0

싸플님의 프로필 이미지
싸플
지식공유자

[참고] https://dba.stackexchange.com/questions/191627/have-to-change-schema-in-production

MongoDB에서는 스키마를 변경할 필요가 없고, 삭제해야 됩니다. 

Mongoose에서는 MongoDB에서는 스키마를 선언적으로 포함하지만, MongoDB는 스키마를 미리 선언할 것을 요구하지 않기에, MongoDB서버는 필드나 인덱스의 사용변화를 알아채지 못합니다. 

그래서  'E11000 duplicate key error index' 이런 에러가 나올수 있습니다. 

[대안][참고] https://masteringjs.io/tutorials/mongoose/unique

https://www.npmjs.com/package/mongoose-beautiful-unique-validation 을 사용해보는 것을 권하지만...

개발 초기시라면 MongoDB서버의 컬렉션을 날리시거나 스키마를 새로 만드시는게... 더 도움이 될 것 같습니다. 

S G님의 프로필 이미지
S G

작성한 질문수

질문하기