|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Скажите пожалуйста, есть несколько grid которые должны быть привязаны к одной процедуре, но разным ее select. Как это осуществить, куда копать? Заранее благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 08:58 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 10:04 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 10:15 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
vahесть несколько grid которые должны быть привязаны к одной процедуре А почему нельзя привязать каждую к своей процедуре? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 10:55 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2vahесть несколько grid которые должны быть привязаны к одной процедуре А почему нельзя привязать каждую к своей процедуре? я так и сделал но из любви к искусству, интересно это реализовать одной процедурой а вдруг так будет быстрее? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:04 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
vahа вдруг так будет быстрее? Я могу предположить теоретический вариант, когда сначала создается временная таблица, а по ней делаются запросы. Тогда будет быстрее. Но тогда возникает вопрос - нафига делать эту временную таблицу с соединением из десятков таблиц , если по ней делаются разные запросы, которым все эти таблицы сразу совсем не нужны? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:10 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Я могу предположить теоретический вариант, когда сначала создается временная таблица, а по ней делаются запросы. Тогда будет быстрее. Но тогда возникает вопрос - нафига делать эту временную таблицу с соединением из десятков таблиц , если по ней делаются разные запросы, которым все эти таблицы сразу совсем не нужны? Ну почему теоретический. Часто бывает. Сложная,тяжелая выборка во временную таблицу или табличную переменную, а потом из нее прямой запрос в первый grid и какая-нибудь группировка во второй grid. Профит: тяжелая выборка делается 1 раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:23 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
VladimirKrVladimirKr, DbDataAdapter.Fill , DataSet.Tables не понимаю, как связать между собой SqlDataReader и DbDataAdapter ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:29 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
vahVladimirKrVladimirKr, DbDataAdapter.Fill , DataSet.Tables не понимаю, как связать между собой SqlDataReader и DbDataAdapter Да никак, просто два разных способа получать нескоолько наборов из одной ХП. Выбирайте более подходящий. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:35 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2vahесть несколько grid которые должны быть привязаны к одной процедуре А почему нельзя привязать каждую к своей процедуре?То же с этим согласен... Чувствуется ТС работает с MSSQL... Если задумают перейти на ORACLE или другую СУБД, то придется менять не только процедуры сервера, но и работу клиента... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:37 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Владимир САCat2А почему нельзя привязать каждую к своей процедуре?То же с этим согласен... Чувствуется ТС работает с MSSQL... Если задумают перейти на ORACLE или другую СУБД, то придется менять не только процедуры сервера, но и работу клиента... +1, эта унылая многорекордсетность - унылое зло, особенно проявляется, когда в будущем для определенной задачи необходимо использовать только один рекордсет из множества. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:41 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Владимир САЕсли задумают перейти на ORACLE или другую СУБД, то придется менять не только процедуры сервера, но и работу клиента... Ну... Не все пишут клиентские нетленки, которые перживают смену сервера или расчитаны на разные сервера. Иногда наоборот, есть один сервер СУБД и к нему приходится привязывать разных клиентов. Пример, которому имя легион: Большая котора и 1C 7.7. А далее всякая аналитика вокруг этих долбаных 1С БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 11:48 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
VladimirKrСложная,тяжелая выборка во временную таблицу или табличную переменную, а потом из нее прямой запрос в первый grid и какая-нибудь группировка во второй grid. Профит: тяжелая выборка делается 1 раз. На мой взгляд - это уже стиль программирования. Я бы, пожалуй, всякие группировки (с пользовательскими настройками! ) сделал бы на клиенте по полученному полному запросу. Не всегда обработка на клиенте - зло. У клиента мозгов много, пусть работают. VladimirKrНе все пишут клиентские нетленки, которые перживают смену сервера или расчитаны на разные сервера С этим согласен. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 12:01 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2На мой взгляд - это уже стиль программирования. Я бы, пожалуй, всякие группировки (с пользовательскими настройками! ) сделал бы на клиенте по полученному полному запросу. Не всегда обработка на клиенте - зло. У клиента мозгов много, пусть работают. Эпическая сила, от кого я это слышу? P.S. Праивильно пишешь, бизнес логике не место на SQL сервере. Так же замороченные запросы часто не стоит решать силами SQL, намного проще сделать простую выборку и доработать напильником на клиенте - высокая гибкость кода, высокая сопровождаемость кода, отсутствие зависимости от конкретной СУБД и ее заморочек. Разумеется, если речь идет о производительности - нужно стараться найти компромисс с СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 12:23 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУЭпическая сила, от кого я это слышу? Бизнес-логика - на сервере. А отображением результатов может и клиент заняться, один черт у него процессор на 1% загружен ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 13:49 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Бизнес-логика - на сервере. Правильно. На сервере приложений и только на нём. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:28 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУ, Современные скуль-сервера вполне себе самодостаточны и незачем городить промежуточное звено в виде апп-сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:32 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУ, Озвучь задачу, которую нельзя решить без апп-сервера ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:33 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2МСУ, Современные скуль-сервера вполне себе самодостаточны и незачем городить промежуточное звено в виде апп-сервера Мешать app layer и data layer в одну кучу - верх кретинизма и непонимания. База отдельно, сервер приложений отдельно. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:34 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2МСУ, Озвучь задачу, которую нельзя решить без апп-сервера Можно задачу решить и без СУБД. Я же говорю о надежных, безопасных, масштабируемых, слабосвязных и сопровождаемых элементах архитектуры. Нужно наскоряк слепить гавно? Делай убогую двухзвенку. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:36 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУверх кретинизма и непонимания Ну, не будем ругаться. Почему они должны быть отдельно? data layer - таблицы и ограничения app layer - хранимые процедуры. Почему бы им не крутится на одном сервере ? Разумеется не в смысле "на одной машине". Наверняка скорость взаимодействия внутри одного сервера будет выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:42 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУДелай убогую двухзвенку. В чем ее убогость, на твой взгляд? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 14:42 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Про дву-трех-звенку... Мое мнение... Многое зависит от типа задачи, возможностей заказчика (в плане выделения серверов)... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:00 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Почему они должны быть отдельно? Потому что ты не читал Руководство Microsoft по проектированию архитектуры приложений Сто раз уже пережевывали эту тему и обрисовывали плюсы трехзвенной архитектуры. Плюсов у двухзвенки вообще нет, абсолютно. Cat2data layer - таблицы и ограничения Никаких ограничений (чеков и убогих триггеров) - этим должен заниматься сервер приложений. Cat2app layer - хранимые процедуры. Это сервер приложений. Хранимые процедуры - это слой того же сервера баз данных, не говори глупостей. Cat2Почему бы им не крутится на одном сервере ? Разумеется не в смысле "на одной машине". Слово распределенность тебе о чем-либо говорит? А масштабирование? А независимость (слабая зависимость) от СУБД? Cat2Наверняка скорость взаимодействия внутри одного сервера будет выше. Сейчас горизонтально отмасштабировать сервер приложений - как два пальца об асфальт, это не проблема. При правильном проектировании логики сервера приложений (читай при прямых руках) разница будет минимальна, а где-то даже и выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:09 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2МСУДелай убогую двухзвенку. В чем ее убогость, на твой взгляд? В том, что логика хранится в СУБД. Это самое невероятное зло на сегодняшний день. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:10 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Озвучь задачу, которую нельзя решить без апп-сервераЕсли обратиться к "определению" сервер приложений , то все становится еще интереснее... Сервер приложений (англ. application server) — это программная платформа (software framework), предназначенная для эффективного исполнения процедур (программ, механических операций, скриптов), которые поддерживают построение приложений. Сервер приложений действует как набор компонентов, доступных разработчику программного обеспечения через API (Интерфейс прикладного программирования), который определен самой платформой. ... Целостность данных и кода ... Централизованная настройка и управление ... Безопасность ... Поддержка транзакций ... Т.е., ни одна из основных "задекларированных" целей и задач сервера приложений вообще не требует использования сервера приложений - с любой из этих задач справляется любой (включая "бесплатные") современный сервер баз данных в базовой ("искаропки") поставке... По нынешним временам "обязаловка" использования серверов приложений - невменяемый трах мозгов себе и заказчикам... Может, когда-то давным-давно, когда сервера были "очень дорогими", а БД были "файловыми", и был хоть какой-то прок от применения апп-серверов... Ссылочную целостность программировать для хотя бы DBF-файлов - то еще удовольствие... Ну, а если какой-то из клиентов такого файл-серверного приложения подвиснет - "вешалка" с перестройкой индексов обеспечена... Но "сейчас" - это очень не "тогда"... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:39 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
МСУПотому что ты не читал Руководство Microsoft по проектированию архитектуры приложений Дык они 10 лет назад за COM агитировали. Нету им веры МСУНикаких ограничений (чеков и убогих триггеров) - этим должен заниматься сервер приложений. С хрена ли? МСУЭто сервер приложений. Хранимые процедуры - это слой того же сервера баз данных, не говори глупостей. Это я тебе пытаюсь растолковать, что не обязательно делить на слои МСУСлово распределенность тебе о чем-либо говорит? А масштабирование? А независимость (слабая зависимость) от СУБД? Говорит. "Независимость от СУБД" - это страшилка для начинающих. Реально никому не нужны приложения, которые работают на Oracle, MS SQL, DB2, Berkly и FoxsPro МСУСейчас горизонтально отмасштабировать сервер приложений - как два пальца об асфальт, это не проблема. При правильном проектировании логики сервера приложений (читай при прямых руках) разница будет минимальна, а где-то даже и выше. Верю, что не меньше ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 15:52 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Это я тебе пытаюсь растолковать, что не обязательно делить на слоиЭто не правильный подход. :) Делить приложение на логические слои/уровни НАДО ! Не обязательно слои/уровни разносить физически (например, с использованием серверов приложений и тп). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 16:43 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
sphinx_mv Делить приложение на логические слои/уровни НАДО ! Надо, надо! Но для этого не надо апп-сервер прикручивать ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 18:30 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2sphinx_mv Делить приложение на логические слои/уровни НАДО ! Надо, надо! Но для этого не надо апп-сервер прикручиватьНу, а я что написал?! Не обязательно слои/уровни разносить физически (например, с использованием серверов приложений и тп). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2013, 18:37 |
|
C# обращение к разным select одной хранимой процедуры
|
|||
---|---|---|---|
#18+
Cat2Дык они 10 лет назад за COM агитировали. Нету им веры А 100 лет назад на лошадях катались. Запрягаешь при поездке в супермаркет? Аргумент не катит, технологии не стоят на месте. Cat2МСУНикаких ограничений (чеков и убогих триггеров) - этим должен заниматься сервер приложений. С хрена ли? Слой бизнес логики, опять же. Триггера - это вообще беспросветное зло. Cat2Это я тебе пытаюсь растолковать, что не обязательно делить на слои Давай уточним, о каком именно ПО идет речь. Я про прикладные корпоративные системы автоматизации бизнеса, где есть сервер баз данных и сервер приложений. Причем вся эта красота развернута в надежный NLB кластер. Если ты про детские шалости на дому для пенсионеров, то никаких серверов не нужно. Cat2МСУСлово распределенность тебе о чем-либо говорит? А масштабирование? А независимость (слабая зависимость) от СУБД? Говорит. "Независимость от СУБД" - это страшилка для начинающих. Реально никому не нужны приложения, которые работают на Oracle, MS SQL, DB2, Berkly и FoxsPro Я 100 раз говорил уже, что не ставлю в приоритеты "Независимость от СУБД". Эта плюшка вытекает сама по дефолту, исходя из факта использования ORM и сервис ориентированной логики. В серьезных системах сейчас даже ленивый держит слой логики на отдельном сервере приложений. Cat2МСУСейчас горизонтально отмасштабировать сервер приложений - как два пальца об асфальт, это не проблема. При правильном проектировании логики сервера приложений (читай при прямых руках) разница будет минимальна, а где-то даже и выше. Верю, что не меньше Нужно рассматривать каждый отдельный случай. Разумеется, иерахические запросы лучше исполнять через CTE рекурсии, а не через ORM варианты. P.S. Посмотри на ту же аксапту, ни одного триггера и хранимой процедуры. Всё на сервере приложений. А теперь сравни производительность с конкурентами 1С и SAP. Почувствуй разницу, как говорится. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2013, 16:23 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1404852]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
others: | 321ms |
total: | 507ms |
0 / 0 |