Çoğu dbms özelliği gibi, eğer doğru durumda kullanırsanız iyi iş yapar, yanlış durumda kötü yapar.
Artıları: Bazı şeyler onsuz yapılamaz. Tipik olarak bu sadece yönetim işi için değil, uygulama kodu için bulduk. Bazı sistem komutları, parametrelerin giriş olarak kullanılmasına izin vermez. Örneğin, her veritabanına karşı bir sproc aracılığıyla, bilinmeyen veritabanları olan birçok durumda bir şey çalıştırmam gerekiyorsa ve komut parametreleri kabul etmiyorsa, bunu genellikle dinamik SQL ile çözerim. Ancak bu Sybase ASE MSSQL daha bir şeydir.
Eksileri: Ben zaten çoktan gitmeyeceğim, çünkü hepimiz zaten bildiğimizi düşünüyorum, ancak yanlış kullanılırsa SQL enjeksiyonu için bazı riskler olabilir. Bana göre daha büyük olanı, sorgunun derlenmiş sorgu planının bir parçası değil, benzersiz bir geçici sorgu gibi davranılmasıdır. Zaman zaman çalışan bir şey için, önemli değil. Dakikada yüzlerce kez yürütülen ve çok sayıda benzersiz sql olacak bir şey için, döngüleri tüketen ve plan önbelleğinin geçerli süresini kısaltan çok sayıda yeni, potansiyel olarak gereksiz sorgu planı oluşturur.