0

Final Class Yiisoft\Db\Sqlite\Builder\UuidValueBuilder

InheritanceYiisoft\Db\Sqlite\Builder\UuidValueBuilder
ImplementsYiisoft\Db\Expression\ExpressionBuilderInterface

Builds a {@see UuidValue} expression for SQLite.

SQLite stores a UUID as 16 raw bytes in a blob(16) column, so the canonical string form is converted to bytes and bound as {@see \Yiisoft\Db\Constant\DataType::LOB}.

Method Details

Hide inherited methods

__construct() public method

public mixed __construct ( \Yiisoft\Db\QueryBuilder\QueryBuilderInterface $queryBuilder )
$queryBuilder \Yiisoft\Db\QueryBuilder\QueryBuilderInterface

                public function __construct(
    private readonly QueryBuilderInterface $queryBuilder,
) {}

            
build() public method

public string build ( \Yiisoft\Db\Expression\ExpressionInterface $expression, array &$params = [] )
$expression \Yiisoft\Db\Expression\ExpressionInterface
$params array

                public function build(ExpressionInterface $expression, array &$params = []): string
{
    /** @var UuidValue $expression */
    return $this->queryBuilder->bindParam(
        new Param(DbUuidHelper::uuidToBlob($expression->value), DataType::LOB),
        $params,
    );
}