Final Class Yiisoft\Db\Oracle\Builder\LikeBuilder
| Inheritance | Yiisoft\Db\Oracle\Builder\LikeBuilder » Yiisoft\Db\QueryBuilder\Condition\Builder\LikeBuilder |
|---|
Build an object of Like into SQL expressions for Oracle Server.
Protected Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $escapingReplacements | array | \ is initialized in buildLike() method since there is a need to choose replacement value
based on Quoter::quoteValue(). |
Yiisoft\Db\Oracle\Builder\LikeBuilder |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Db\Oracle\Builder\LikeBuilder |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| prepareColumn() | Yiisoft\Db\Oracle\Builder\LikeBuilder | |
| preparePlaceholderName() | Yiisoft\Db\Oracle\Builder\LikeBuilder |
Constants
| Constant | Value | Description | Defined By |
|---|---|---|---|
| ESCAPE_SQL | " ESCAPE '!'" | Yiisoft\Db\Oracle\Builder\LikeBuilder |
Property Details
Method Details
| public __construct( \Yiisoft\Db\QueryBuilder\QueryBuilderInterface $queryBuilder ): mixed | ||
| $queryBuilder | \Yiisoft\Db\QueryBuilder\QueryBuilderInterface | |
public function __construct(
private readonly QueryBuilderInterface $queryBuilder,
) {
parent::__construct($queryBuilder);
/**
* Different pdo_oci8 versions may or may not implement `PDO::quote()`, so {@see Quoter::quoteValue()} may or
* may not quote `\`.
*/
$this->escapingReplacements['\\'] = substr($this->queryBuilder->getQuoter()->quoteValue('\\'), 1, -1);
}
| protected prepareColumn( \Yiisoft\Db\QueryBuilder\Condition\Like|\Yiisoft\Db\QueryBuilder\Condition\NotLike $condition, array &$params ): string | ||
| $condition | \Yiisoft\Db\QueryBuilder\Condition\Like|\Yiisoft\Db\QueryBuilder\Condition\NotLike | |
| $params | array | |
protected function prepareColumn(Like|NotLike $condition, array &$params): string
{
$column = parent::prepareColumn($condition, $params);
if ($condition->caseSensitive === false) {
$column = 'LOWER(' . $column . ')';
}
return $column;
}
| protected preparePlaceholderName( string|\Stringable|integer|\Yiisoft\Db\Expression\ExpressionInterface $value, \Yiisoft\Db\QueryBuilder\Condition\Like|\Yiisoft\Db\QueryBuilder\Condition\NotLike $condition, array &$params ): string | ||
| $value | string|\Stringable|integer|\Yiisoft\Db\Expression\ExpressionInterface | |
| $condition | \Yiisoft\Db\QueryBuilder\Condition\Like|\Yiisoft\Db\QueryBuilder\Condition\NotLike | |
| $params | array | |
protected function preparePlaceholderName(
string|Stringable|int|ExpressionInterface $value,
Like|NotLike $condition,
array &$params,
): string {
$placeholderName = parent::preparePlaceholderName($value, $condition, $params);
if ($condition->caseSensitive === false) {
$placeholderName = 'LOWER(' . $placeholderName . ')';
}
return $placeholderName;
}
Signup or Login in order to comment.