Re[46]: Опять валидация данных
От: GlebZ Россия  
Дата: 07.04.05 12:31
Оценка: 36 (1)
Здравствуйте, Sinclair, Вы писали:

S>Очень вряд ли. Там же фиксированный список будет. Сколько у тебя может быть потомков у класса в системе? 1000? Ерунда — полетит со страшной скоростью.


S>Ага. Это, конечно, правильно. Но мы даем шикарную возможность вынудить сервер заниматься бессмысленной работой. Все должно быть оправдано. Если ты не можешь придумать реальный пример, который бы требовал именно as, то незачем его и делать.

Не соглашусь. Потомков у класса может быть много. И учитывая то что это ORM с реляционным маппированием, то в некоторых случая может получиться, что на каждый тип сгенерится свой запрос.

Я вообще пока пошел по другому пути. Ввел понятие typeing. Например такой запрос:
select FucObjects

возвращает все объекты наследованные от FucObject — то есть, практически все объекты находящиеся в БД. А вот так не надо строить много as.
select FucObjects typeing typeas(FucObjects, FucDocument, FucMessage)

вернуть array<FucObjects> у которых реальный тип объектов FucDocument и FucMessage.
И еще одну феньку сделал. Можно в одном запросе возвращаеть сразу несколько наборов.

select a, b where a=10 and b=20

будет определено что это два графа выполнения, и будет возвращено два результирующих набора.

С уважением, Gleb.
... << RSDN@Home 1.1.4 beta 4 rev. 358>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.