Mit vibe.d können Datenbanken einfach in das Backend eingebunden werden. MongoDB und Redis kommen direkt in vibe.d eingebaut. Andere Datenbankadapter können auf code.dlang.org gefunden werden.
Zugang zu MongoDB kann mithilfe der Klasse
MongoClient
erreicht werden.
Die Implementation hat keine extrene Abhängigkeiten und verwendet
asynchrone vibe.d Sockets. Hierdurch wird eine Anfrage nicht unnötig
blockiert.
auto client = connectMongoDB("127.0.0.1");
auto users = client.getCollection("users");
users.insert(Bson("peter"));
Redis kann ebenfalls asynchron verwendet werden und
benötigt auch keine externen Abhängigkeiten. Mit der
RedisDatabase
Klasse können Anfragen auf einen Redis-Server getätigt werden.
Zusätzlich gibt es Hilfsklassen wie
RedisList
,
welche die Nutzung vereinfachen und zum Beispiel erlauben Listen
in einer Redis-Datenbank zu benutzen.
MySQL kann mithilfe der mysql-native Bibliothek eingebunden werden. Diese Bibliothek hat keine externen Abhängigkeiten und unterstützt ebenfalls die nicht-blockierenden vibe.d sockets.
Eine volle Postgresql Implementation kann mit der dpq2 Bibliothek eingebunden werden. Sie basiert auf der offiziellen libpg Bibliothek und kann das vibe.d Eventsystem verwenden um asynchrone Aufgaben zu erledigen.
Alternativ kann ddb verwendet werden, welches vibe.d Sockets benutzt und keine externen Abhängigkeiten besitzt.