Кто-нибудь может сказать плюсы и минусы хранимых процедур И плюсы и минусы хранимых процедур Java? - PullRequest
3 голосов
/ 11 мая 2010

Кто-нибудь может сказать плюсы и минусы хранимых процедур И плюсы и минусы хранимых процедур Java? И как это проверить.

С наилучшими пожеланиями!

Ответы [ 2 ]

7 голосов
/ 11 мая 2010

Аргументы за и против хранимых процедур имеют тенденцию разделяться на то, что, по вашему мнению, является правильным ответом на вопрос: относится ли бизнес-логика к базе данных или приложению? Я постараюсь быть нейтральным в изложении аргументов. Если мне это удастся, некоторые из моих плюсов и минусов будут противоречить друг другу.

PRO

  1. Хранимые процедуры упрощают обмен кодом базы данных между приложениями
  2. Совместное расположение данных, связанных с данными, упрощает применение бизнес-правил в приложениях. Этот подход дает привилегию владельцу данных перед пользователем данных.
  3. Хранимые процедуры используют язык, специально разработанный для программирования баз данных.
  4. Масштаб хранимых процедур с базой данных.

CON

  1. Бизнес-логика не принадлежит базе данных.
  2. Хранимые процедуры написаны на специализированных и неуклюжих языках программирования, которые среднестатистический разработчик не заинтересован в изучении.
  3. Мы не можем просить администратора баз данных писать хранимые процедуры, потому что администраторы баз данных ненавидят разработчиков.
  4. Хранимые процедуры выполняются в базе данных, и база данных является узким местом.

Многие из этих общих положений также применимы к хранимым процедурам Java. Я написал ответ на ваш связанный вопрос , поэтому эти плюсы и минусы могут показаться вам знакомыми.

PRO

  1. Хранимые процедуры Java позволяют нам расширять функциональность, доступную для программ баз данных.
  2. В частности, это может позволить нам более гибко интегрировать операции в базе данных и доменах ОС.
  3. Многие разработчики знают, как писать на Java.
  4. Хранимые процедуры Java позволяют нам развертывать наше приложение базы данных в разных продуктах СУБД.

CON

  1. Java не работает так же хорошо, как собственный код базы данных.
  2. Хранимые процедуры Java влекут за собой написание специального кода, который дублирует встроенную функциональность ..
  3. Java не приспособлена для операций с базами данных.
  4. Java может создавать проблемы безопасности. особенно когда дело доходит до запуска программ в ОС из базы данных.

Следующее относится к собственным хранимым процедурам и хранимым процедурам Java: код, написанный разработчиками без понимания того, как работает база данных, может действительно работать плохо. Это в равной степени относится к встроенным интерфейсным инструментам или инструментам ORM, настроенным без соответствующего уровня знаний. Однако такая ситуация менее вероятна при использовании собственных хранимых процедур, поскольку их функциональность направлена ​​на создание эффективных приложений баз данных.

0 голосов
/ 11 мая 2010

хранимые процедуры про:

-Secure

-Производительность и масштабируемость

-Позволяет вносить изменения в один уровень (сама база данных, а не фактический код интерфейс / веб-страница)

-Можно написать сценарий или перенести легко

...