Ich bin neu in Azure DocumentDB und bei der Ausführung einer grundlegenden gespeicherten Prozedur auf ein unerwartetes Verhalten gestoßen. Die gespeicherte Prozedur (siehe unten) gibt "no docs found" zurück, aber die Sammlung, die die SELECT
-Anweisung abfragt, enthält viele Dokumente. Verblüffend ist, dass die Ausführung der gleichen SELECT
-Anweisung im Abfrage-Explorer dazu führt, dass ein einzelnes Dokument wie erwartet zurückgegeben wird. Fehle ich etwas wirklich Grundlegendes hier?Gespeicherte Azure DocumentDB-Prozedur gibt nichts zurück
function simple() {
var collection = getContext().getCollection();
// Query documents and take 1st item.
var isAccepted = collection.queryDocuments(
collection.getSelfLink(),
'SELECT TOP 1 * FROM MyCollection c',
function (err, feed, options) {
if (err) throw err;
// Check the feed and if it's empty, set the body to 'no docs found',
// Otherwise just take 1st element from the feed.
if (!feed || !feed.length) getContext().getResponse().setBody("no docs found");
else getContext().getResponse().setBody(JSON.stringify(feed[0]));
});
if (!isAccepted) throw new Error("The query wasn't accepted by the server. Try again/use continuation token between API and script.");
}
Nur neugierig: Haben Sie eine partitionierte Sammlung oder einzelne Partition Sammlung? –
Ja, die Sammlung ist partitioniert. –