Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Im Konsolenmodus können Mongo-Shell Befehle nativ ausgeführt werden. Die Eingaben werden von der Anwendung nicht formatiert oder modifiziert, sondern unverändert an die Mongo-Shell weitergeleitet. 

Warnung

Der Konsolenmodus ist ein Feature von Version 1.2.0! Der bisherige Konsolenmodus (C) zu Server-Seitiges-Script (S) umbenannt.

Tipp

Hier findet man eine Dokumentation der Mongo-Shell Befehle: http://docs.mongodb.org/manual/core/crud-introduction/

Codeblock
themeEmacs
languagejs
linenumberstrue
// Liefert alle Datensätze
db.zipcode.find();
 
// Liefert alle Städtename und sortiert danach
db.zipcode.find({}, {city: 1}).sort({city: 1})
 
// Erstelle eineeinen neuen zipcode Datensatz
db.zipcode.insert({_id: '99999', city: 'LEIPZIG', pop: 520838, state: 'SN'})
 
// Analysieren der Abfrage
db.zipcode.find().explain()
 
// Zeige die Statistiken der Collection
db.zipcode.stats();

Image Added

 

Warnung

Im Konsolenmodus gibt es keinen Pager. Daher werden bei jeder Abfrage alle Datensätze geladen. Da dies unter Umständen eine sehr große Datenmenge sein kann, wird die Ergebnismenge auf 100 Datensätze beschränkt. Es empfiehlt sich, die Funktionen skip() und limit() zu verwenden.

Info

Verwendet man nur einen Befehl, ist das Semikolon am Ende optional.

 

...

Genau wie in der Mongo Shell werden immer 10 Datensätze als Ergebnis geliefert. Wenn man "it" eingibt, werden die nächsten 10 Datensätze geladen.

Authentifizierung 

Wenn man den Konsolenmodus für eine Collection öffnet, welche Authentifizierung benötigt, muss man sich in der Konsole nochmals authentifizieren.

Der Konsolenmodus funktioniert nur, wenn die Mongo-Serverinstanz serverseitiges JavaScript aktiviert hat. Dies ist standardmäßig aktiviert.
Codeblock
themeEmacs
languagejs
function () {
	var stats = db.zipcode.stats();
	var index = db.zipcode.getIndexes();
	return {
		stats: stats,
		indexInformation: index
	};
}
Hinweis
linenumberstrue
// zur aktuellen Datenbank wechseln
use meineDatenbank
 
// authentifizieren
db.auth('login', 'passwort')