PHPackages                             dimajolkin/ydb-doctrine - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. dimajolkin/ydb-doctrine

ActiveLibrary[Database &amp; ORM](/categories/database)

dimajolkin/ydb-doctrine
=======================

It's driver for YDB https://ydb.tech

0.0.1(2y ago)148Apache-2.0PHPPHP ^8.1

Since Jul 3Pushed 2y ago1 watchersCompare

[ Source](https://github.com/dimajolkin/ydb-doctrine)[ Packagist](https://packagist.org/packages/dimajolkin/ydb-doctrine)[ RSS](/packages/dimajolkin-ydb-doctrine/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (4)Versions (3)Used By (0)

Demo
----

[](#demo)

[![Test](https://github.com/dimajolkin/ydb-doctrine/actions/workflows/php.yml/badge.svg?branch=master)](https://github.com/dimajolkin/ydb-doctrine/actions/workflows/php.yml)

```
    composer require dimajolkin/ydb-doctrine:dev-master
```

Пишется для проверки возможности запуска в маленьком проекте

```
# Для ананимного доступа. Используется при локальной разработке
DATABASE_URL="ydb://localhost:2136/local?discovery=false&iam_config[anonymous]=true&iam_config[insecure]=true"

#
DATABASE_URL="ydb://ydb.serverless.yandexcloud.net:2135/ru-central1/xxxxxxx/xxxxxxx?discovery=false&iam_config[temp_dir]=/tmp&iam_config[use_metadata]=true"
```

Example for Symfony:

```
parameters:
  doctrine.orm.entity_manager.class: Dimajolkin\YdbDoctrine\ORM\EntityManager

#services:
#  doctrine.dbal.logging_middleware:
#    class: 'Dimajolkin\YdbDoctrine\DBAL\Driver\Middleware\LoggerMiddleware'

doctrine:
    dbal:
        options:
            YBD_URL: '%env(resolve:DATABASE_URL)%'
        driver_class: Dimajolkin\YdbDoctrine\Driver\YdbDriver
        wrapper_class: Dimajolkin\YdbDoctrine\YdbConnection
        server_version: 1.4
    dql:
      string_functions:
        rand: Dimajolkin\YdbDoctrine\ORM\Functions\Rand
```

Генерация таблиц

```
 use Doctrine\DBAL\Schema\Table;

 $table1 = new Table('event_bonuses');
 $table1->addColumn('event_id', Types::STRING);
 $table1->addColumn('event_bonuses_id', Types::STRING);
 $table1->setPrimaryKey(['event_id', 'event_bonuses_id']);
 $this->connection->createSchemaManager()->createTable($table1);

 $table2 = new Table('event');
 $table2->addColumn('id', Types::STRING);
 $table2->addColumn('name', Types::STRING, ['notnull' => false]); // Если колонка не в PK то обязательно not null!
 $table2->setPrimaryKey(['id']);
 $this->connection->createSchemaManager()->createTable($table2);
```

Функции

1. RAND(columnName) -

DBAL Type mapping to YDB:

Doctrine\\DBAL\\TypesValueYDB TypeARRAYarrayjsonASCII\_STRINGascii\_stringutf8BIGINTbigintint64BINARYbinarystringBLOBblobstringBOOLEANbooleanboolDATE\_MUTABLEdateDATE\_IMMUTABLEdate\_immutableDATEINTERVALdateintervalDATETIME\_MUTABLEdatetimeDATETIME\_IMMUTABLEdatetime\_immutabledatetimeDATETIMETZ\_MUTABLEdatetimetzDATETIMETZ\_IMMUTABLEdatetimetz\_immutableDECIMALdecimalFLOATfloatfloatGUIDguiduuidINTEGERintegerint32JSONjsonjsonOBJECTobject-SIMPLE\_ARRAYsimple\_arrayjsonSMALLINTsmallintint8STRINGstringutf8TEXTtextutf8TIME\_MUTABLEtimeint32TIME\_IMMUTABLEtime\_immutableint32YDB Type:

Dimajolkin\\YdbDoctrine\\YdbTypesConstant ValueDescriptionBOOLboolINT8int8INT16int16INT32int32INT64int64UINT8uint8UINT32uint32UINT64uint64FLOATfloatDOUBLEdoubleDECIMALdecimalSTRINGstringUTF8utf8JSONjsonJSON\_DOCUMENTjsonDocumentYSONysonUUIDuuidDATEdateDATETIMEdatetimeTIMESTAMPtimestampINTERVALinterval

###  Health Score

22

—

LowBetter than 21% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1024d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/791ec7bfcc4ae47ccacfb92b8e281c6b8a03f158bde061de5084442191cf2b02?d=identicon)[dimajolkin](/maintainers/dimajolkin)

---

Top Contributors

[![dimajolkin](https://avatars.githubusercontent.com/u/7441874?v=4)](https://github.com/dimajolkin "dimajolkin (73 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/dimajolkin-ydb-doctrine/health.svg)

```
[![Health](https://phpackages.com/badges/dimajolkin-ydb-doctrine/health.svg)](https://phpackages.com/packages/dimajolkin-ydb-doctrine)
```

###  Alternatives

[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M388](/packages/easycorp-easyadmin-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1189.8k](/packages/rcsofttech-audit-trail-bundle)[kimai/kimai

Kimai - Time Tracking

4.8k9.0k1](/packages/kimai-kimai)[2lenet/crudit-bundle

The easy like Crud'it Bundle.

1616.4k14](/packages/2lenet-crudit-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
