|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2 DimaR Нееее Конечно не надо тащить на клиента данные за года!!! Согласен. Другое дело, если у тебя на клиенте от предыдущего например запроса УЖЕ ЕСТЬ исходные данные для расчета, и если с расчетом может справиться и сам клиент -тогда пусть работает клиент. Ну не очевидно ли? 2Borland 1.Я не агитирую ни одним словом за ФС. 2.Я спросил про ХП, потому что не знал (вы думаете я хотел поиздеваться?) и мне в принципе уже конструктивно ответили. 3.Я высказал мнение что ИНОГДА, полезно разгрузить сервер. Почитайте ВНИМАТЕЛЬНО. Может быть даже СНАЧАЛА. А тигру как понять-то -никакого конструктива, сплошные эмоции, в основном негативные. Зачем мне это? Своих проблем хватает. Жизнь коротка - потерпи немного :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 16:11 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2 Marat_L : > Я не агитирую ни одним словом за ФС. Зря:-) Для небольшой бд с 2-5 клиентами вполне и фс подойдёт:-) >(вы думаете я хотел поиздеваться?) Вовсе нет. Просто нужно достаточно чётко понимать, что следует реализовывать с помощью ХП, а что можно отдать клиенту. Излишки как в ту, так и в другую сторону сами понимаете, к чему может привести ----- Все великие дела совершаются в командной строке ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 16:18 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Ну не очевидно ли? Может я чегото непонимаю, (туповат наверное) но для меня не очевидно. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 16:20 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2 DimaR В смысле пример не понял? Например ты на клиента послал какую-то выборку. Отчет по продажам. И надо там тебе итог внизу вывести. Ты для этого еще один запрос на сумму пошлешь? :) 2 Borland Понимать надо, согласен, за этим я здесь. Жизнь коротка - потерпи немного :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 16:28 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Например ты на клиента послал какую-то выборку. Отчет по продажам. И надо там тебе итог внизу вывести. Ты для этого еще один запрос на сумму пошлешь? Слишком простой пример, В Oracle мне не надо посылать лишний запрос , это можно сделать в одном зпросе, и итоги и подитоги по групировкам и т.д. Хотя я согласен, для очень примитивных вещей над очень маленьким объемом информации, может и имееет смысл считать на клиенте, но это такие вещи накпример как, хочу проссумировать 3 строки в одном столбце, (как в EXCEL когда выделяеш числа мышкой) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 16:45 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Да как же это так, у меня получился прекрасный конструктив, даже отличный, на 5 А по поводу суммы - наверное примера попроще привести нельзя У меня сумма считается вообще самим гридом - фича такая у него :) А когда надо - ХП. И заметь, чтобы показать сумму, не обязательно показывать список. И ты для суммы потянешь его на клиента? Вахххх....!!! А теория по поводу КС лччень интересна, спишем ее на 1 арпеля -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 18:13 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Вот) пример гипертрофированного понимания сохраненок: Когда чтобы получить отчет, который можно получить простым запросом (или сложным, но одним! запросом) пишется ХП Сохраненку нужно делать тогда, когда: Несколько выборок, Обсчет результатов с какой-либо логикой, возврат итогового резалт-сета, или набора значений. Т.е. когда одним запросом необойтись. Да и то, можно так извратицца и написать ХП что, пока она работает все остальные юзеры будут отдыхать. Наглядный пример - начиление процентов по счету. А вообще КС- придумали для рапределения вычислительной нагрузки на несколько компов. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 18:25 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
>А вообще КС- придумали для рапределения вычислительной нагрузки на несколько компов Едва ли. Я раньше думал, что КС придумали, когда данные на компьютерах организации стали "разьезжаться" - т.е. сразу после внедрения СУД на более чем одном компьютере. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 18:37 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
gardenmanВот) пример гипертрофированного понимания сохраненок: Когда чтобы получить отчет, который можно получить простым запросом (или сложным, но одним! запросом) пишется ХП Ну да, так оно обычно и бывает: написали простой запросик в 10 приложениях, а потом оказалось что структуру базы надо чуток поменять и запросик будет чуть другой, может даже не сложней, а еще проще, но другой. И выискивай в каких приложениях этот запросик был написан... В лучшем случае удаётся заменить таблицу на вью. Не совсем удачный пример вобщем ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 19:06 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
))) а зачем выискивать? Запросик лежит в каком-нить методе какого-нить класса...)) Неужто трудно найти? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.04.2004, 21:24 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Затем, что он может оказаться далеко не в одном приложении и не в одной библиотеке и даже на разных платформах, писанный разными разработчиками. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 07:50 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
автор))) а зачем выискивать? Запросик лежит в каком-нить методе какого-нить класса...)) Неужто трудно найти? Тоже не согласен, какие методы? какие классы...? У меня 100 клиентов, а в запросике чуточку поменялся какой-нибудь множитель, я что, должен собрать новую версию клиента, и пробежаться по 100 машинам? Другой пример, я пишу новый модуль, так я знаю, что ХП GetПростенькийЗапрос вернет Мне нужный результат, и зачем мне в новом клиенте повторять один и тот - же запрос, а если учесть что есть разработчик БД и разработчик клиента, то тут и говорить нечего. Вообще, ХП позволяет изолировать БД и организовать четкую единую бизнес логику на 1й машине в пределах одной программы. Кстати, тот же Oracle рекомендует в транзакционных системах – рядовому пользователю не давать права даже на просмотр таблиц, тем более на их обновление, а все организовывать процедурно, после чего раздавать права на процедуры, каждой группе пользователей. Вот это действительно жесткая логика, и достойная безопасность. А когда у вас, уважаемые сторонники Файл Сервера, пользователь может подключится через какой ни будь access к серваку, и разом снести все данные из одной таблицы, (причем замете, без возможности отката транзакции ) – это конечно круто! Так что спор о надобности ХП, и преимуществах файл сервера считаю бессмысленным. На мой взгляд, использование ФС возможно лишь в случае если: 1 небольшое кол-во пользователей. 2 нет требований к разделению привилегий на чтение запись. 3 не требуется транзакционная целостность. (хотя сложно представить, где такое может быть. Пример: с клиента начал создавать накладную, клиент повис, кусок накладной в БД есть, куска нет, что с этим делать?). Я думаю этот список можно дополнить, но это уже не принципиально… ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 10:43 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2Sergey P. Тоже не согласен, какие методы? какие классы...? У меня 100 клиентов, а в запросике чуточку поменялся какой-нибудь множитель, я что, должен собрать новую версию клиента, и пробежаться по 100 машинам? Ну, это ИМХО, не довод. А если в запросе добавилось/убавилось полей + убавилась/добавилась реализация реакции пользователя на это поле. Один хрен - прогу править. А таскать не надо, пусть проверяют обновление и качают его автоматом. Кстати, тот же Oracle рекомендует в транзакционных системах – рядовому пользователю не давать права даже на просмотр таблиц А где про это почитать можно. Ткните, плиз А в остальном да, согласен. Я не ретроград, я за ХП. Когда надо. 8-) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 11:48 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Друзья, я начал читать эту тему, хотя не знаю что такое ХП. Это не то же самое, что запрос? Я имею ввиду, что запрос может вместо таблицы обращаться к другому запросу. Вот этот другой запрос и ХП это одно и то же? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 12:09 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Нет, другой запрос - это называется View. А ХП - это программа, которая хранится на сервере БД и запускается там же, и в зависимости от своего назначения (ну и от названия сервера БД, конечно) может много чего разного делать. Изменять данные в БД, возвращать данные клиенту, давать или не давать клиенту доступ к другим данным, ходить в интернет за свежими курсами валют и т.д. и т.д... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 12:21 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Я фигею!!! Доводы детей.... -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 12:36 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Тигра, тебе что-то не понравилось в моем объяснении? ;-))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 12:42 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Прям как в том анекдоте. Сегодня вечером перечитывал пейджер, много думал. Много уже сказано про приемущества использования хп. Основное все-таки две веши - абстрагирование от схемы хранения данных + централизация и унификация обработки данных. Если пишеться небольшое приложение бд на несколько пользователей, то да можно обойтись и запросами с клиента, хотя и их лучше оформить в виде хп. Но если речь заходит о разработке крупных проектов, ERP системы, например, то и спорить нечего. Все бизнес-операций необходимо оформлять в виде хп. Классическая двухуровневка естественно имеется ввиду. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 13:22 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
To Серега авторНу, это ИМХО, не довод. А если в запросе добавилось/убавилось полей + убавилась/добавилась реализация реакции пользователя на это поле. Один хрен - прогу править. А таскать не надо, пусть проверяют обновление и качают его автоматом. Да у меня книга есть O’reilly Oracle PL/SQL, вот они там со сылкой на своих оракловых коллег такие рекомендации дают, за что купил за то продал. Искать страницу, чтобы ткнуть пальцем не буду – лень. Но вообще это достаточно логично, если у меня достаточно большая БД, где есть допустим, финансы, закупки, склад, производство, работа с клиентами. Это будет очень удобно. Можно в принципе и на таблицы или вьюхи права раздавать – но это уж как кому нравиться. А что касается авторНу, это ИМХО, не довод. А если в запросе добавилось/убавилось полей + убавилась/добавилась реализация реакции пользователя на это поле. Один хрен - прогу править. А таскать не надо, пусть проверяют обновление и качают его автоматом. Это один из возможных доводов, конечно если вытаскивать чистый справочник- то, наверное, нет смысла использовать ХП, запрос возвращает какое ни будь одно агрегированное значение, или сложный запрос, то тут по-моему однозначно или вьюха, или ХП. Да вообще мне кажется, спор какой то детский, это все равно что спорить нужна в программирование классовая модель или нет. И при этом в качестве примера ставить задачу написать программу сложения 2х чисел. To Tigra авторЯ фигею!!! Доводы детей.... Я что то не понял, в чей огород этот камень? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2004, 14:40 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
UrriТигра, тебе что-то не понравилось в моем объяснении? ;-))) Нет, это не тебе - чтож я, совсем чтоли того? Это к gardenman, Marat_L и им подобным в этом топике. -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2004, 14:13 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Тигра (взрослый дядька блин). Я задал вопрос. Если хочешь что-то ответить-объяснить - скажи не стесняйся, (только внятно). А то жмешься че-то. Сообщений много - а ничего не сказал. Жизнь коротка - потерпи немного :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2004, 14:34 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Да я уж отвечал, да и другие отвечали, замучались уже. Куда же еще то? И смысла нет - это ведь главное. -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2004, 15:04 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Ладно не плачь :) Про доводы детей - действительно ответил, мне даже понравилось. Спасибо за дельный и добрый совет. Еще раз, всем спасибо. Жизнь коротка - потерпи немного :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.04.2004, 15:16 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Так плачь то не от меня исходит -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
06.04.2004, 11:19 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Файл серверников мне кажется надо прибивать в корне). Вот к нам на вакансию Админ SQL+Axapta недавно дяденька пытался устроится - но как сказал , что любит только фокспро, мы ему сразу отказали). Про баланс: программеры из 1С тоже пытались соблюсти баланс между клиентом и сервером, но видимо ошиблись с серединой баланса. Так что не пытайтесь наступать на их же грабли. Плюс текущая мировая глобализация и новый виток спирали по отношению к серверам дают о себе знать. Сегодня у вас 10 человек в БД, завтра 100, послезавтра 1000, а в пятницу 1млн. И попробуйте-ка апдейты всем делать) Посмотрите например на сетевые возможности Solaris9, и сравните со своими ФC) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 09:00 |
|
|
start [/forum/topic.php?fid=35&msg=32469237&tid=1552669]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
26ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 144ms |
0 / 0 |