Whether to use Stored Procedures or not is more of a religious or political discussion at a bar than not.
What needs to be done is clearly define your application layers and not step over those boundaries. Stored procedures have several advantages and disadvantages over doing queries outside of the database.
Avantaj 1: Saklı yordamlar modüler vardır. Bu bir bakım açısından iyi bir şeydir. Sorgu sorun uygulamanızda ortaya çıktığında, büyük olasılıkla bu GUI kod birçok çizgiler içinde gömülü gömülü bir sorgu daha bir saklı yordam gidermek için çok daha kolay olduğunu kabul ediyorum.
Avantaj 2: Saklı yordamlar ayarlanabilir vardır. Lütfen arayüzü için veritabanı iş kolu prosedürleri sahip olarak, bir sorgunun performansını artırmak için GUI kaynak kodunu değiştirmek için ihtiyacı ortadan kaldırır. Katılmak yöntemleri açısından, farklı tablolar, vb - - ön uç arayüzü şeffaf değişiklikler saklı prosedürleri yapılabilir.
Avantaj 3: istemci tarafında Saklı yordamlar soyut veya ayrı ayrı sunucu tarafı fonksiyonları. Bu GUI kodu aracılığıyla sorgu oluşturmak için daha bir yordamı çağırmak için bir GUI uygulaması kodlamak için çok daha kolaydır.
Avantajı 4: Saklı prosedürleri genellikle veritabanı geliştiriciler / yöneticileri tarafından yazılmıştır. Bu rolleri tutan kişiler genellikle daha verimli sorgular ve SQL cümleleri yazma deneyimlidir. Bu uygulamanın işlevsel ve grafik sunum parçaları becerilerini kullanmak için GUI uygulama geliştiricileri boşaltır. Onlar en uygun oldukları görevleri yerine insanları varsa, o zaman sonuçta daha iyi bir genel uygulama üretecek.
Tüm bu göz önüne çeşitli dezavantajları vardır.
Disadvantage 1:
Applications that involve extensive business logic and processing could place an excessive load on the server if the logic was implemented entirely in stored procedures. Examples of this type of processing include data transfers, data traversals, data transformations and intensive computational operations. You should move this type of processing to business process or data access logic components, which are a more scalable resource than your database server.
Disadvantage 2:
Do not put all of your business logic into stored procedures. Maintenance and the agility of your application becomes an issue when you must modify business logic in Sp language. For example, ISV applications that support multiple RDBMS should not need to maintain separate stored procedures for each system.
Disadvantage 3:
Writing and maintaining stored procedures is most often a specialized skill set that not all developers possess. This situation may introduce bottlenecks in the project development schedule.
Herhalde bazı avantajları ve dezavantajları, yorum yapmaktan çekinmeyin kaçırmış.