powered by simpleCommunicator - 2.0.34     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Фильтровка данных на сервере.
12 сообщений из 12, страница 1 из 1
Фильтровка данных на сервере.
    #32451493
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здраствуй уважаемый ALL.

Вот перехожу на .Net, пока правда не очень получается, может кто поспособствует мудрым советом.

Итак!
Есть: VB.Net, ADO.Net, БД на MSSQL2000, типизированный датасет, Адаптер, View и СП по 1 шт. (огрубляю конечно) так вот, задача какая надо на форму вытащить всего одну запись вида или СП (они практически одинаковые, только соответственно п Сп параметры для фильтрации), но с СП вариант вроде не очень удобный получается т.к. необходимо будет придумывать еще и команды UPDATE, INSERT, DELETE а хотелосьбы что-нибудь более автоматическое, а вид получается тащит все записи, а их там много, во!

Что придумать не знаю, но в тексте програмы создавать SQL текст это не выход, потому как, должна быть четкая возможность исправлять SQL часть (минимальные правки) без изменения клиента.

Кто, что подскажет, господа професионалы?
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451556
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если тебе надо одну запись то нет смысла применять DataAdapter, DataSet, DataTable и другую прослойку.

Возможны два (это самые быстрые варианты)
1) Использование SQLCommand и выходных параметров хранимой процедуры
2) Использование SQLDataReader и SQLCommand(ExecuteReader)(кстати DataAdapter также использует SQLDataReader только не многие об этом знают)

Оба варианта предполагают использование хранимых процедур, которые позволят абстрагироваться от клиентского кода,

P.S. Похорошему и типизированной DataSet здесь лишнее, если хочется большей гибкости и независимости клиента.
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451562
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sa гибкость тело хорошее, но так как это далеко не еденичный случай хочется, что бы это было гдето за фоном, это раз, а во вторых насколько я понял Datareader не сожет обновлять, а только считывает данные!
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451582
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если речь идет об ОДНОЙ записи, которую надо получать с сервака а потом заливать обратно изменения.
То оптимальный выбор SQLCommand и входные, выходные параметры хранимой процедуры.

Но учитывай что я говорю про самые быстрые способы, если же полей очень много (был у меня такой 99 записей) то может быть просто не удобно создавать ВСЕ параметры к комманду ,
и тогда в ущерб производительности можно использовать aдаптер.

В чем конкретно у тебя проблема?
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451598
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>был у меня такой 99 записей)
читать как 99 полей.

Вообще процесс добавления параметров к SQLCommandу можно упростить с использованием объекта Row.
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451599
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну общий смысл такой, хочется использовать ДА, вот только как заставить его грузить не все записи из таблицы(вида) а с фильтровкой на стороне сервера.
Command это конечно выход, но я морально не готов к таким решениям, слишком привык к ADO и всяким Accessам!
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451603
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sa да не там максимум 20 полей, но я просто из той серии, что чем меньше написал рукам оновление и добовление тем меньше ошибок, потому как именно это самые проблемные места, покрайней мере для меня, а все остальное можно и руками, лишь бы не обновление и добавление!
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451639
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну стандартного метода связанный с фильтрацией на стороне сервера в ADO.NET я не встречал (99.9% что такого нет) .
Ведь даже порционный Fill (класса SQLDataAdapter) все равно закачивает все записи а потом херачит их на стороне клиента.

Я в твоем случае сделал бы хранимые процедуры на Update, Insert, Delete, Select. А в хранилках можно как угодно организовать фильтрацию данных.

Я так понял вам надо что то подобное server-side cursor в ADO?
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451659
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sa Скорее serverfilter
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451674
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант вы можете использовать ADO как COM объект.
А у OleDbDataAdapter есть метод Fill который способен преобразовывать ADOвский RecordSet в NETовский DataSet.

Но как это все будет в реалии я не скажу так как лично в подобных случаях прибегаю к способу описанному мной выше.
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451728
Nir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть конечно еще один обходной маневр: сделать табличку в каторую перед загрузкой кинуть фильтровочное значение чтоб потом его использовоть в виде, но я чесно говоря опосаюсь такого варианта, может кто скажет по этому поводу что-нибудь.
...
Рейтинг: 0 / 0
Фильтровка данных на сервере.
    #32451984
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Есть конечно еще один обходной маневр: сделать табличку в каторую перед загрузкой кинуть фильтровочное значение чтоб потом его использовоть в виде, но я чесно говоря опосаюсь такого варианта, может кто скажет по этому поводу что-нибудь.

А я не вижу смысла в таких обходных маневрах. Проще для фильтрации поставить WHERE в SELECTе. Конечно если вы опишите структуры таблиц, примерные данные, наличие идентификаторов, критерий фильтрации и т.д можно сказать что то более конкретно.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Фильтровка данных на сервере.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]