|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
В программе алгоритм построен так что приходится обходить циклы. Подскажите - а работать программа будет быстрее если алгоритм записать в процедуру и выполнить ее на сервере? Или одиково что в приложении по циклам ходить - что в процедуре на сервере? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 07:33 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306В программе алгоритм построен так что приходится обходить циклы. Подскажите - а работать программа будет быстрее если алгоритм записать в процедуру и выполнить ее на сервере? Или одиково что в приложении по циклам ходить - что в процедуре на сервере? вапрос абстрактный. ответ будет такой же. есть алгоритмы которые нужно делать только на сервере, есть те , которые нужно делать только на клиенте , есть те которым без разницы , а есть те , которые предпочительно делать на сервере, но в принципе без разницы. без конкретики ответы будут такими. что за сервер , что за клиент, что за цыклы . ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 08:25 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
beg-in-er, sql server 2012, выбираю строки datagrigview которые отметил галочкой пользователь (это у меня имена таблиц). Затем открываю 1 цикл - прохожу списку выбранных таблиц рекурсивно проверяю есть у таблицы внешние ключи : да - вызываю рекурсию, нет - проверяю если подчиненные таблицы : да - цикл по этим таблицам и запуск рекурсии ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 10:53 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306beg-in-er, sql server 2012, выбираю строки datagrigview которые отметил галочкой пользователь (это у меня имена таблиц). Затем открываю 1 цикл - прохожу списку выбранных таблиц рекурсивно проверяю есть у таблицы внешние ключи : да - вызываю рекурсию, нет - проверяю если подчиненные таблицы : да - цикл по этим таблицам и запуск рекурсии если не нужно отображать статус выполнения либо задавать пользователю дополнительные вопросы - то наверно стоит такое мудрить на сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 11:00 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306Затем открываю 1 цикл - прохожу списку выбранных таблиц рекурсивно проверяю есть у таблицы внешние ключи : да - вызываю рекурсию, нет - проверяю если подчиненные таблицы : да - цикл по этим таблицам и запуск рекурсии А можно в двух словах, в чем заключается задача? Выглядит мрачно, но мое мнение - вложенная процедура сделает это быстрее, чем циклы по результатам запросов на клиенте. Хотя, конечно, процедура должна быть хорошо написана. Плюс есть риск положить сервер криво написанной рекурсивной процедурой - да кого это пугает. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 11:00 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
На сервере всё описанное можно сделать одним запросом. И работать это будет однозначно быстрее, чем на клиенте. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 11:04 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Pallaris, Идея такая. Есть таблица "ЭкспортДанных", следущей структуры : "ТаблицаПриеник", "ПолеТаблицыПриемника", ЭПризнакПолеПервичныйКлюч", "ПризнакПолеВнешняяСсылка", "ТаблицаИсточник","ТаблицаПриемник". Пользоваель через форму (в datagridview) - галочкой выбирает таблице, данные из которых надо записать в XML. Отркрываю цикл по выбранным таблицам. Если у выбранной таблице есть внешние ключи - надо и эти таблицы записать в XML и их проверить. А "положить сервер" - это значит он вообще накроется если зациклится или что?? Чего то я уже боюсь на сервер лезть ..... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:32 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, А в чем суть одного запроса? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:32 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306, Вы, что бы материализовать таблицы, как я понял используете могучий и родной датасет, так в чем вопрос, зачем лазить на сервер если у вас все данные которые нужны со всеми ограничениями, со всеми ключами, и т.д. многое чего, уже выбраны, если хп - вы представляет что это такое?( у вас на поверхностный дс ушло два месяца, а на хп? форум ляжет на 2-3 года...) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:40 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306Чего то я уже боюсь на сервер лезть ..... Ну, как говорится, зубов бояться - ... Хотя правильно боишься Где-то в степи форум ляжет на 2-3 года... :) :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:46 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306Отркрываю цикл по выбранным таблицам. Если у выбранной таблице есть внешние ключи - надо и эти таблицы записать в XML и их проверить. Задача - по выбранным пользователем таблицам сохранить в xml все данные включая справочники? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:53 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306, ... в очередной раз определитесь, какова у вас задача ... если вы хотите синхронизировать базы данных на разных серверах (с сохранением ключей и т.д.) - это одна задача, и она решается другими инструментами ... если же вам нужно передать данные (используя XML в качестве транспортного носителя) - это нечто более другое, и ключи вам тут совершенно не нужны ... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 12:55 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Pallaris, Да все выбранные таблицы (поля таблицы не все, а какие укажет пользователь) и справочники ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 16:00 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306, а потом что с xml делается, зачем он нужен? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 16:09 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Pallaris, отдам коллеге он будет его читать и выгружать в свои таблицы. структуру и название таблиц мне известны. xml используем для трансортировки данных. и еще вот один момент, даже пока не знаю как подойти - если данные передала один раз то при следующей выгрузки не передавать эти записи, а только новые. и синхронизировать данные как то надо ..... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2013, 20:44 |
|
выполнять алгоритм на сервере или прописать в приложении?
|
|||
---|---|---|---|
#18+
Tanya_0306... отдам коллеге он будет его читать и выгружать в свои таблицы. структуру и название таблиц мне известны. xml используем для трансортировки данных. и еще вот один момент, даже пока не знаю как подойти - если данные передала один раз то при следующей выгрузки не передавать эти записи, а только новые. и синхронизировать данные как то надо ..... Таня, Вам уже с десяток раз говорили, откажитесь от идеи выгружать данные в XML - используйте SSIS (SQL Server Integration Services). Там можно сделать всё, что Вам нужно... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2013, 14:08 |
|
|
start [/forum/topic.php?fid=20&msg=38446449&tid=1403766]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
202ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 385ms |
total: | 694ms |
0 / 0 |