Я использую Azure и Cosmos DB для хранения некоторой информации, но у меня есть некоторые проблемы с новой коллекцией, которую я создал.
Я всегда выхожу такое сообщение об ошибке:
Failed to update document 5b83e5297dfa952bb4036fa6: {"code":400,"body":"Command update failed: query in command must target a single shard key."}
Название коллекции - «элемент», и я пытаюсь сохранить URL-адреса некоторых изображений. Итак, сначала я пытаюсь добавить следующий документ
{
"_id" : ObjectId("5b83e5297dfa952bb4036fa6"),
"imageURL" : "https://www.tendance-parfums.com/media/resized/460/600/baseline-1/bgcolor-255-255-255/constrainonly-1/defaultimage-/keepaspectratio-1/keepframe-/mode-outer_resize/media/catalog/product/c/h/chanel-n5-eau-de-parfum-vaporisateur-y_2.jpg"
}
Обратите внимание, что _id создается автоматически.
Итак, я не знаю, почему портал Azure всегда выдает ошибки!
Некоторые детали, коллекция использует параметры по умолчанию (неограниченный размер), я использую imageURL в качестве ключа осколка, 15000 в качестве пропускной способности и item в качестве идентификатора коллекции.
Есть идеи?
PS: Другой вопрос, что он ищет shard key при создании коллекции, а пока у меня есть только это поле imageURL, но я не уверен, что оно подходит?
Также: вы упоминаете, что портал дает ошибки. Значит, это не имеет ничего общего с написанным вами кодом? В таком случае: еще раз, пожалуйста, опишите конкретные действия, которые вы предприняли, чтобы получить сообщение об ошибке через портал.
Спасибо, но кода нет, я использую портал Azure для вставки некоторых документов. Обратил внимание, что я также пытался вставить данные с кодом Xamarin, но у меня тоже есть ошибки, нет возможности вставить такую запись !!!
Я могу посочувствовать твоему разочарованию, но крик не решит никаких проблем. Я попросил вас отредактировать свой вопрос, чтобы указать более подробную информацию (например, используемый API). Кроме того, вы должны предоставить подробную информацию о типе созданной вами коллекции (например, фиксированная или неограниченная; и все другие сведения). Без дополнительной информации здесь буквально нет способа решить вашу проблему.

Я нашел способ исправить это, похоже, ключ осколка не может быть URL-адресом, поэтому я использую другой сложный, и он работает !!!
Измените свой вопрос, чтобы отобразить код, в том числе информацию об ошибке. Как написано, неясно, в чем именно ваша проблема. Кроме того, неясно, используете ли вы API SQL (собственный DocumentDB) или API MongoDB. Вероятно, API MongoDB, поскольку вы упомянули ключ осколка. Но опять же, на самом деле нет возможности ответить без более конкретных деталей.