46 Stimmen

Arbeiten mit Sonderzeichen in einer Mongo-Sammlung

Ich habe eine Sammlung, die ich nicht löschen kann. Ich nehme an, dass das "-" in ihrem Namen ein Sonderzeichen ist. Wie lassen sich Sonderzeichen in MongoDB am besten umgehen?

> db.tweets.drop();
true

BUT

> db.tweets-old.drop();
ReferenceError: old is not defined (shell):1

Ich habe versucht, mit Anführungszeichen (sowohl einfach als auch doppelt) und einem Schrägstrich zu entkommen, aber nichts funktioniert.

83voto

Niels van der Rest Punkte 30365

Die folgenden Werke:

db["tweets-old"].drop();

Es heißt die eckige Klammer Notation die es Ihnen ermöglicht, Sonderzeichen in Eigenschaftsnamen zu verwenden.

17voto

Blakes Seven Punkte 47310

Das gilt auch:

db.getCollection("tweets-old").drop()

Und das gibt es jetzt schon eine ganze Weile.

Darüber hinaus ahmt der Methodenaufruf auch die allgemeine Accessor-Methode "get a collection" in allen offiziell unterstützten MongoDB-Treibern nach. Daher sollten Sie sich daran gewöhnen, die Methode auf diese Weise zu verwenden, da der Accessor "benannte Auflistung" in der Regel so verwendet wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X