ORM'ler (Nesne-ilişkisel eşleme) Saklı Yordamlar ile birbirini dışlamaz. Çoğu ORM, saklı yordamları kullanabilir. İsterseniz çoğu ORM, Saklı Yordamlar oluşturur. Yani mesele ya da değil.
ORM'ler kabul edilemez SQL üretebilir (performans açısından) ve bazen bu SQL'i el yapımı SQL ile geçersiz kılmak isteyebilirsiniz. Bunu yapmanın yollarından biri SP'leri kullanmaktır (saklı yordamlar).
DotNet'te aşağıdaki durumlarda saklı yordamları kullanmayın:
Saklı yordamlara aşina değilseniz (durumunuz değil, tamlık için dahil edilmiştir).
Projenize bir karmaşıklık ve aydınlatıcı katmanı tanıtmak istemiyorsanız.
Farklı veritabanlarıyla çalışacak veya birkaç veritabanı sunucusunda çoğaltılması gereken bir uygulama oluşturuyorsunuz (bu son kısıtlama yalnızca bazı veritabanları için geçerli olabilir).
Tetikleyicilerin ORM'lerle karşılaştırılmaması gerektiğini unutmayın. Tetikleyiciler, uygulama kodunuzda daha iyi olmayan işlevler yapar (veritabanlarında verileri günlüğe kaydetme veya senkronize etme gibi).
Bazı insanlar, güvenlik (örneğin SQL enjeksiyonunu önlemek için) gibi farklı nedenlerle ve talep edilen hızları için SQL'de Saklı Yordamların kodda kullanılmasını tercih eder. Ancak, bu biraz tartışmalıdır ve ayrıntılı tartışmaya ihtiyaç vardır.
ORM'niz Saklı Yordamlar oluşturamıyorsa ve büyük bir sistem yazmanız gerekiyorsa, davanıza bağlı olarak ekstra el kodlamasının ağırlığını almanız gerekir.