Вы можете привести колонны к varchar, например. литье (col как varchar (50)). пробел не может быть преобразован в числовой.
Я был в аналогичной ситуации несколько месяцев назад. Я нашел, что инструменты как Zend_ACL работают отлично, если Вы просто проверяете уровень доступа к единственному объекту (или довольно небольшое число их). Это перестало работать, когда необходимо получить огромный список объектов, пользователю разрешают получить доступ. Я обработал настраиваемое решение к этой проблеме с помощью Бизнес-шаблона Делегата. BD обеспечивает бизнес-логику, которая может быть применена в определенном контексте. В этом сценарии логика SQL поставлялась и использовалась в качестве фильтрации условия в подвыборе. См. следующие схемы:
(источник: epsi.pl)
И диаграмма последовательности, которая иллюстрирует порядок вызовов:
(источник: epsi.pl)
Я вел блог об этом решении, к сожалению, это - все на польском языке, но можно найти части кода и схем удобными. Что я могу сказать, реализация не является куском пирога, но мудрый производительностью, это - чемпион по сравнению с повторяющейся проверкой доступа каждый элемент в списке. Кроме того, инфраструктура выше обрабатывает не только один тип объектов в списке. Это может служить при доступе к различным спискам, быть этим список городов, стран, продуктов или документов пока объекты на реализации списка IAuthorizable
интерфейс.
Не знайте о деталях своей проблемы, но Платформа Зенда имеет довольно мощный ACL и набор AUTH компонентов, на которые можно хотеть посмотреть. Хороший материал как очень точное управление доступом, храня данные для постоянства, усовершенствовал условные правила.
Если Вы не знаете, как сделать это, я использовал бы php платформу как Платформа Зенда, CakePHP или Симфония. Они сделали тяжелый подъем для Вас и уже имеют некоторый тип схемы управления доступом на месте.
Мне как то, кажется, в чем Вы нуждаетесь, это: (Я буду использовать пример страны/состояния/города),
Для городского пользователя, очевидно, ищите и отобразите только те записи, имеющие отношение к городу, который соответствует их идентификатору. Для государственного или национального уровня, хотя, ищите все записи, имеющие отношение к каждому городу, который имеет идентификатор, соответствующий той стране (или состояние или что имеет Вас).
Так в основном каждая sub группа является иждивенцем на группе выше его, и хотя я не вспоминаю правильно, я полагаю, что можно использовать запросы sub для добиваний цели оттуда.