|
Bence depolanmış prosedürler sadece SQL birleşmelerinden oluşuyor. Ortada biraz mantık kontrolü ekleniyor. Ancak, depolanmış prosedürler daha karmaşık işlerle ilgilenirken daha faydalıdır. Örneğin, karmaşık bir veri işlemesi. Eğer bunu ön masada halledersen. Birden fazla veritabanı bağlantısı olabilir. Ama eğer saklanan prosedürleri kullanırsanız. Sadece bir kez. Yanıt süresi açısından bir avantaj var. Başka bir deyişle, depolanmış prosedürler bize daha iyi operasyonel verimlilik avantajları sağlayabilir. Ayrıca, programlar hata kararsızlığına yatkındır ve veritabanı sorunları olmadığı sürece kayıtlı prosedürler neredeyse hiç sorun olmaz. Başka bir deyişle, güvenlik açısından, depolanmış prosedürleri kullanan sistem daha kararlıdır. Az miktarda veri içeren veya parayla ilgisi olmayan projeler, saklanan prosedürler olmadan normal şekilde çalışabilir. MySQL'in depolanmış prosedürleri henüz uygulamada test edilmedi. Eğer resmi bir projeyse, SQL Server veya Oracle stored prosedürlerini kullanmanız önerilir. Veri-veriye işlemiş olunca, süreç bir programdan çok daha hızlıdır. Mülakatçı, depolama olup olmadığını sordu, hatta mülakata gelen programcının büyük miktarda veriyle bir proje yapıp yapmadığını öğrenmek istedi. Eğer eğitimliyse, küçük bir proje ya da küçük bir şirket varsa, depolama ile temas kesinlikle daha az olur. Bu nedenle, büyük bir şirkete girmek istiyorsanız, depolama süreçlerinde zengin deneyim olmadan bunu yapamazsınız. Peki depolama ne zaman kullanılabilir? Veri hacmi açısından çok büyük olmayan ve iş işleme açısından çok karmaşık olmayan küçük projeler için gerekli değiller mi? Yanlış. Depolanmış prosedürler sadece büyük projeler için değil, küçük ve orta ölçekli projeler için de uygundur; depolanmış prosedürlerin kullanılması da çok gereklidir. Gücü ve avantajları esas olarak şu noktalarda yansır: 1. Depolanmış prosedürler yalnızca oluşturulma anında derlenir ve gelecekte her kez yeniden derlemeye gerek yoktur; genel SQL ifadeleri ise her yürütüldüğünde derlenir; bu nedenle saklanan prosedürlerin kullanılması veritabanının çalışma hızını artırabilir. 2. Veritabanında karmaşık işlemler yapılırken (örneğin Güncelleme, Ekleme, Sorgulama ve Silme gibi birden fazla tablo), bu karmaşık işlem depolanmış prosedürlerde kapsüllenebilir ve veritabanı tarafından sağlanan işlem işlemleriyle birlikte kullanılabilir. Bu işlemler, programatik olarak yapılırsa, veritabanına birden fazla bağlantı gerektirebilecek SQL ifadelerine dönüşür. Depolama yerine, veritabanına sadece bir kez bağlanmanız yeterlidir. 3. Depolanmış prosedürler yeniden kullanılabilir, bu da veritabanı geliştiricilerinin iş yükünü azaltır. 4. Yüksek güvenlik, yalnızca bu kullanıcı belirtilen depolanmış süreci kullanma hakkına sahip olabilir.
|