Страница 3 из 3

Добавлено: 14 май 2007, 07:46
Anderyt
можно попробовать вот так:

Код: Выделить всё

SELECT av.attrib_id
,(select vs.value
from
lsdbo.value_string_view vs
where
vs.id = av.value_id
) as string
,(select vd.value
from
lsdbo.value_datetime_view vd
where
vd.id = av.value_id
) as data
FROM lsdbo.attrib_value_view av 
WHERE 
av.object_id = 100001244200507
вот только что с этим делать?? ;-)
при большом желании можно заменить ИД атрибута на название этого атрибута... но что потом?
а если говорить о плане выполнения и об ограничении..
здесь дело в правах... (да простят меня разработчики, но я все таки скажу)
при обращении к видам (lsdbo.ххх_view) сервер делает запросы к куче таблиц, проверяя права на объекты (атрибуты, документы...)
если сделать свой вид, который будет вытаскивать нужные данные из нужных ТАБЛИЦ (а не видов), то работать это будет быстрее и ограничении на число таблиц будет здорово отодвинуто.
но защита информации - на вашей совести, так от того, каким будет этот вид, будет зависеть то, сможет ли юзер, НЕ имеющий прав на объект, получить информацию об этом объекте...

Добавлено: 14 май 2007, 07:53
Александр
да наверно это выход, с одной стороны, с другой это вход :wink:
Ладно будем работать на грани ограничения, раскидывая все что можно по разным отчетам :?