"제공된 키 요소가 스키마와 일치하지 않습니다"라는 오류가 발생합니다. uuid
이 내 주 파티션 키입니다. version
에 대한 기본 정렬 키도 있습니다. batchWrite
(docs)을 사용하여 uuid
의 모든 항목을 삭제할 수 있다고 생각했습니다. 다음과 같이DynamoDB를 사용하여 일괄 처리를 어떻게 삭제합니까?
내 ES6 코드는 다음과 같습니다
delete(uuid) {
const promise = new Promise();
const params = {
RequestItems: {
[this.TABLE]: [
{
DeleteRequest: {
Key: { uuid: uuid }
}
}
]
}
};
// this._client references the DocumentClient
this._client.batchWrite(params, function(err, data) {
if (err) {
// this gets hit with error
console.log(err);
return promise.reject(err);
}
console.log(result);
return promise.resolve(result);
});
return promise;
}
이 기본입니다 키에 erroring 왜 확실하지. 나는 열쇠가 아닌 것으로 검색 할 때 다른 색인이 필요하다는 게시물을 보았습니다. 그러나 나는 그것이 여기있는 경우라고 생각하지 않는다.
그것은 그 반대'uuid' 필드는 문자열로 설정하고 당신이 그것에게 번호를 부여하고, 또는 가능한가요? – mindoftea
@mindoftea 좋은 추측이지만 문자열을 기대하는 필드에 긴 문자열을 전달하고 있습니다. 나는 편집증에 걸렸지 만'uuid'는 실수로 정의되지 않았지만 그럴 것 같지 않습니다 :)'{ "RequestItems": { "campaigns": [{ "DeleteRequest": { "Key": { "uuid": "2f114a47 -835e-4937-a0b6-675e0e15ab86 "}}}]}}' –
우리 동쪽에서 일하고 있습니까? 난 실제로 발전기에서 이상한 서버 오류가 발생했기 때문에 실제로이 게시물에서 일어 났을 것입니다. 아마도 오늘은 망가 졌을 것입니다. – mindoftea