Bana göre SQL, iş mantığı kodunun temel bir parçasıdır (çoğu durumda, çoğunluk). Bunu döndürülen verilerde çalışan koddan ayırmaya çalışırsanız, kodun anlaşılabilirliği ve sürdürülebilirliğini dengesiz hale getirmeye daha eğilimlisiniz.
Ona baktığımda, veri okumak, veri işlemek, veri yazmak, veri aramak ... hepsi benzer işlemler ve en iyi aynı yerde tutuluyor.
Sorgularla çabaların bir kopyasını hissetmeye başlarsanız, belki de bir veritabanı görünümüne veya veritabanı erişiminin bu yönünü kapsayabilecek bir nesneye ihtiyacınız vardır.
Başka bir ipucu aslında iyi bir veritabanı sorgu yöntemine sahip olmaktır. Yazdığım yazılımda (PostgreSQL, MySQL, SQL Server), sorgu işlemlerimin büyük bir kısmının tek bir kod ifadesi olarak yer almasını sağladım.
GetValue(SQL, [transaction], [array_of_params])
GetRow(SQL, [transaction], [array_of_params])
GetRowList(SQL, [transaction], [array_of_params])
GetValueList(SQL, [transaction], [array_of_params])
Execute(SQL, [transaction], [array_of_params])
Bunlar benim (bağlantı) benim "bağlantı nesnesi" bir parçası olduğundan emin olun ana işlev çağrıları vardır. Bu dile, gerçekte ne uyguladığınıza bağlıdır, ama benim amacım onu gerçekten, gerçekten basit ve ağrısız tutmaktır.
Özet olarak, SQL'i programlamanın yerel bir parçası olarak ele alın ve soyutlama uğruna soyutlamayın.