• I agree with all Patryks reasons for using a data access layer.

    I also re-iterate rugha's comment - see the microsoft SqlHelper class which they publish separately as a freely downloadable Data Access Application Block.

    This allows the coder to use static methods to perform most data access tasks which makes things much easier. You can of course build on this to do logging etc...

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp