1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/yunnet-MongoDBDrivers

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

MongoDB Driver for Delphi/FreePascal

Автор внёс изменения и добавил условные операторы по исходному адресу: https://github.com/fabriciocolombo/mongo4delphi.

Промежуточная версия драйвера MongoDB для Delphi/FreePascal с удобным API на основе драйвера Java. Собственные типы Delphi отображаются на Variant, а более сложные типы (такие как ObjectId, Array и т. д.) имеют специфическую реализацию.

Драйвер протестирован с Delphi 7, Delphi XE и FreePascal (Lazarus 0.9.30.2/FPC 2.4.4) и, вероятно, будет работать нормально с другими версиями Delphi выше 7. Если кто-то захочет протестировать другие версии Delphi, дайте обратную связь, и я обновлю эту документацию. Для полного тестирования скомпилируйте исходный код, запустите модульные тесты и убедитесь, что демо работает.

Для совместимости с FreePascal можно использовать соединение TPC Delphi Sockets или Synapse.

Использование:

Есть два основных модуля для доступа к серверу mongodb: mongo.pas и BSONTypes.pas.

Пример кода:

var mongo: TMongo; db: TMongoDB; coll: TMongoCollection; bson: IBSONObject; item: IBSONArray; begin mongo := TMongo.Create; try mongo.Connect(${server.host}, ${server.port}); db := mongo.getDB('testdb'); coll := db.GetCollection('testcoll');

bson := TBSONObject.NewFrom('code', 123)
                   .Put('name', 'Fabricio')
                   .Put('LocalDate', Date);

item := TBSONArray.NewFrom('awesome')
                  .Put(43.29)
                  .Put(2012);

bson.Put('items', item);

coll.Insert(bson);

finally mongo.Free; end; end;

Определение классов:

В файле mongo.pas представлены классы:

  • TMongo — представляет соединение с сервером mongo, с такими методами, как GetDB(const ADBname: String): TMongoDB.
  • TMongoDB — представляет базу данных mongo, с методами вроде RunCommand и GetCollection.
  • TMongoCollection — представляет коллекцию внутри базы данных и имеет такие методы, как Insert, Update, Remove, CreateIndex, Find и др.
  • TMongoCursor — курсор для результатов запроса. Курсор позволяет подготовить запрос перед открытием, основные методы: Skip, Limit, BatchSize, Count, Size, Sort, Hint, Explain, Snapshot, а также для итерации по возвращаемым строкам: hasNext и Next.

Файл BSONTypes.ps содержит классы, представляющие документы или типы значений:

  • IBSONObject — документ.
  • IBSONArray — массив значений, который может содержать другие документы.
  • IObjectId — специфическая реализация типа BSON objectId. Могут быть созданы и другие типы.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Драйвер MongoDB для Delphi/FreePascal на промежуточной стадии разработки с удобным API, основанным на драйвере Java. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/yunnet-MongoDBDrivers.git
git@api.gitlife.ru:oschina-mirror/yunnet-MongoDBDrivers.git
oschina-mirror
yunnet-MongoDBDrivers
yunnet-MongoDBDrivers
master