Підключення бази даних

Vibe.d полегшує доступ до баз даних у ваших серверних службах. Підтримка MongoDB і Redis надходить безпосередньо з vibe.d, у той час як інші адаптери баз даних можна знайти на code.dlang.org.

MongoDB

Доступ до MongoDB моделюється за допомогою класу MongoClient. Реалізація не має зовнішніх залежностей і здійснюється за допомогою асинхронних сокетів для vibe.d. Немає необхідності у блокуванні, якщо з'єднання здійснюється із затримкою.

auto client = connectMongoDB("127.0.0.1");
auto users = client.getCollection("users");
users.insert(Bson("peter"));

Redis

Підтримка Redis так само реалізована за допомогою сокетів для vibe.d за відсутності зовнішніх залежностей. Основним для реалізації є RedisDatabase клас, який дозволяє відправляти команди до сервера Redis. Також доступна зручна обгортка, така як RedisList. Вона дозволяє прозоро отримати доступ до списку, що зберігається у Redis.

MySQL

Підтримка MySQL без зовнішніх залежностей може бути додана за допомогою модуля mysql-native. Він також підтримує неблокуючі сокети для vibe.d.

PostgreSQL

Повнофункціональний клієнт PostgreSQL реалізовано за допомогою зовнішнього модулемя dpq2, який базується на офіційній бібліотеці libpq. Він використовує систему подій vibe.d для реалізації асинхронної поведінки.

Альтернативою для PostgreSQL є DDB, який реалізує клієнт PostgreSQL за допомогою сокета vibe.d, також без зовнішніх залежностей.

rdmd playground.d