データベースを抽象化する ORM ツール (nHibernate) を使用するか、DAL を表す一連のインターフェイスを定義してから、IoC 実装 (Ninject、Castle など) を使用して基盤となるものを交換することを検討する必要があります。インターフェースを実装している限り、自由に実装できます。
ただし、将来を見据えた (つまり、他のデータベースを操作する際の微妙な癖に対処できる) インターフェースを設計することは簡単ではないため、いずれにせよ変更が必要になる可能性があります。
次の順序で、次の 2 つのいずれかを行います。
<オール>データベースを抽象化する良い例ですが、必ずしも DAL 自体が Microsoft の Enterprise Library Data Access Application Block である必要はありません。