В eID-скрипте я использую QueryBuilder , чтобы получить некоторые записи из базы данных. Запрос также возвращает скрытые и удаленные записи, хотя я ожидал бы, что DefaultRestrictionContainer исключит эти записи.
Нужна ли какая-то инициализация, чтобы заставить работать контейнеры ограничения? Можно ли вообще использовать ограничительные контейнеры в eID-скриптах?
Вызов $queryBuilder->getRestrictions()
показывает, что DefaultRestrictionContainer существует.
Вызов $queryBuilder->getSQL()
показывает, что ограничения не добавляются в запрос.
Запрос так же прост:
/** @var \TYPO3\CMS\Core\Database\Query\QueryBuilder $queryBuilder */
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('my_table');
$statement = $queryBuilder
->select('a', 'b')
->from('my_table')
->where(
$queryBuilder->expr()->eq('c', $queryBuilder->createNamedParameter(123, \PDO::PARAM_INT))
)
->execute();