有一天,我向同事展示了我正在研究的一些代码,并且在传递过程中他评论了我有硬编码的SQL语句这一事实.现在这些SQL语句是非常静态的,并且那些确实倾向于改变的我在数据库中创建了视图,并且有一个硬编码的"从视图中选择列"这种事情.
所以我的问题是在这些情况下最佳做法是什么?
是将SQL语句作为资源添加到项目中,然后在代码中调用资源?有更好的方法吗?
编辑:在这种情况下,我使用.Net2.0与SQL Server 2005和Oracle数据库进行交互
存储过程.防止注射,维护等各种可能的问题.将数据库代码放在数据库代码所属
ORM工具(如Hibernate,Subsonic等)意味着你永远不会看到一行T-SQL.陡峭的学习曲线,但是一个很好的做法,尽早开始而不是更晚.