15.2. Die Asterisk-Datenbank
Warnung
DBput(family/key=value)
Zum Speichern eines Werts in der DatenbankDBget(var=family/key)
Um einen Wert aus der Datenbank auszulesen. Wird der aufgerufene Key in der Datenbank nicht gefunden, erhöht sich die Priorität um 101.
DB()
besprochen. Diese Variante funktioniert auch in der
Version 1.2.DB()
zugegriffen werden (siehe Abschnitt D.17, „DB()
“).15.2.1. Werte in die Datenbank schreiben
DB()
kann innerhalb der Applikation
Set()
aufgerufen werden. Soll in der Family
obst
der Eintrag apfel
den Wert
20
bekommen, so geschieht das mit folgendem
Aufruf:exten => 1234,1,Set(DB(obst/apfel)=20)
15.2.2. Werte aus der Datenbank lesen
DB()
in der Form ${DB(family/key)}
abgerufen
werden. Um den Inhalt des Eintrags apfel
in der Family
obst
auf dem Command Line Interface auszugeben, kann man
folgenden Aufruf ausführen:exten => 1234,1,NoOp(obst/apfel hat den Wert ${DB(obst/apfel)})
apfelmenge
gespeichert werden, so kann dies mit
Set()
erfolgen:exten => 1234,1,Set(apfelmenge=${DB(obst/apfel)})
15.2.3. Werte aus der Datenbank löschen
DBdel()
und
DBdeltree()
können zum Löschen von Datenbankeinträgen
genutzt werden.DBdel() und ${DB_DELETE()}
DBdel()
einen
einzelnen Eintrag in der Datenbank. Soll der Key apfel
in
der Family obst
gelöscht werden, so geschieht das wie
folgt:exten => 1234,1,DBdel(obst/apfel)
DB_DELETE()
benutzen. Der Aufruf
kann wie folgt erfolgen:exten => 1234,1,NoOp(${DB_DELETE(obst/apfel)})Siehe auch Abschnitt C.33, „
DBdel()
“ und Abschnitt D.18, „DB_DELETE()
“.DBdeltree()
DBdeltree()
. Die Family obst
kann mit
exten => 1234,1,DBdeltree(obst)
DBdeltree()
“[78] Die Berkeley-Datenbank (Berkeley DB) ist eine hochperformante, eingebettete Datenbank-Bibliothek mit Programmierschnittstellen zu C, C++, Java, Perl, Python, Tcl und vielen weiteren Programmiersprachen. Die Berkeley DB speichert beliebige Schlüssel- oder Datenpaare und unterstützt mehrere Datenelemente für einen einzelnen Schlüssel. Die Berkeley DB ermöglicht Tausende von simultanen Threads zum Manipulieren der Datenbanken, die bis zu 256 Terabyte groß sein können, und läuft auf einer großen Anzahl von Systemen, unter anderem auf den meisten UNIX-artigen und Windows-Systemen und auch auf Echtzeitbetriebssystemen. [Zitiert aus http://de.wikipedia.org/wiki/Berkeley_DB]