![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Geparder |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 22.7.2011 Репутация: нет Всего: нет |
Задача состоит в составлении пользовательских отчетов. Нужно накладывать различные условия на различные поля, выбирать поля и их последовательность отображения.
Таблицы имеют иерархическую зависимость и отображать их следует в таком же виде. Я это делаю с помощью ORDER BY. Пример части получившегося запроса ![]() Решить поставленную задачу удалось, всё отображается, но вот когда условия накладываются одновременно на различные таблицы в одном запросе, то такой сложный запрос не выполнется. Думаю не стоит так загружать сервер. Может загружать таблицы в чистом виде, а потом их из памяти обрабатывать. Может поможет LINQ to Objects? Но как там можно программно менять запрос в зависимости от условий? Ниже приведен пример SQL запроса, который не получилось выполнить: ![]()
Это сообщение отредактировал(а) Geparder - 17.1.2012, 05:24 |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
ну сделайте чтобы у вас нормальный (выполняемый) запрос генерировался. Мы при чем?
Если хотите в памяти на клиете это делать тогда курите в сторону DLINQ и ExpressinsTree. -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
ninasus |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 12.4.2012 Репутация: нет Всего: нет |
У вас что там гигабайты информации обробляются? Если да, то и в память Вы все таблицы особо не загрузите. Для быстрого выполнения селектов работайте на сервере БД и настройне инлексы в БД.
|
|||
|
||||
erm0l0v |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: нет Всего: 1 |
По поводу программного изменения Linq запроса погуглите про спецификаторы.
Возможно вы упростите жизнь SQL серверу если добавите таблицы с промежуточными данными, можно например выделить несколько основных отчетов и записать их в БД(и подправлять при добавлении новых данных) и иже из этих таблиц вы сможете строить конечные отчеты. Сохранять данные в памяти не очень хорошо, может лучше локальную БД. Вы можете воспользоваться Sync Framework для синхронизации локальной БД с основной... |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
я когда говорил "в памяти" имел в виду сделать sql выражение на стороне клиента используя Expressions-ы -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |