投稿者 るきお  (社会人) 投稿日時 2022/6/9 21:12:38
私は直接文字列でSQLをプログラム内に埋め込むのが好きですが、少数派かもしれません。
ただ、データアクセス層とビジネスロジック層またはU層は明確に分離し、データアクセス層の外にはモデルとしてデータを公開するアプローチをとります。
(Dapperなどこの仕組みを効率よく実現するものも存在します。)
こうすることでプログラムの部分部分で役割が明確になり、デバッグ・分業等がやりやすくなります。

開発チーム内で反対意見が出るようであれば、文字列としてSQLを埋め込むことを強く主張はしません。

最近はEntity Frameworkを使う事例も多いようです。(これを使ったからと言ってSQLから完全にお別れできるわけではありませんが)。Entity Frameworkを使用するには勉強が必要です。
https://docs.microsoft.com/ja-jp/dotnet/framework/data/adonet/ef/

SQLをプログラムに埋め込む場合でも、魔界の仮面弁士さんが指摘しているように、パラメーター化は必ずやります。これは、業務システムのプログラマーの間では常識となっており、パラメーター化なしで文字列のSQLをプログラムで組み立てて実行するプログラムを書くプログラマーは現場では注意を受けると思います。
Webシステムの場合、脆弱性の原因になるので発注主から訴えられるリスクすらあります。