src/EventSourcing/Snapshotting/Vendor/DoctrineDbalSnapshotStore.php
public function initialize()
    {
        $schema = new Schema();

        $snapshotsTable = $schema->createTable(self::SNAPSHOTS_TABLE);
        $snapshotsTable->addColumn('id', 'integer', ['autoincrement' => true]);
        $snapshotsTable->addColumn('aggregate_type', 'string');
        $snapshotsTable->addColumn('aggregate_id', 'string');
        $snapshotsTable->addColumn('type', 'string');
        $snapshotsTable->addColumn('version', 'integer');
        $snapshotsTable->addColumn('snapshot', 'text');
        $snapshotsTable->setPrimaryKey(['id']);

        $queries = $schema->toSql($this->connection->getDatabasePlatform());
        $this->connection->transactional(function(Connection $connection) use ($queries) {
            foreach ($queries as $query) {
                $connection->exec($query);
            }
        });
    }
public function initialize()
    {
        $schema = new Schema();

        $snapshotsTable = $schema->createTable(self::SNAPSHOTS_TABLE);
        $snapshotsTable->addColumn('id', 'integer', ['autoincrement' => true]);
        $snapshotsTable->addColumn('aggregate_type', 'string');
        $snapshotsTable->addColumn('aggregate_id', 'string');
        $snapshotsTable->addColumn('type', 'string');
        $snapshotsTable->addColumn('version', 'integer');
        $snapshotsTable->addColumn('snapshot', 'text');
        $snapshotsTable->setPrimaryKey(['id']);

        $queries = $schema->toSql($this->connection->getDatabasePlatform());
        $this->connection->transactional(function(Connection $connection) use ($queries) {
            foreach ($queries as $query) {
                $connection->exec($query);
            }
        });
    }
Initialize the Event Store