In a project we have implemented the data access layer (DAL) with a visual designer that auto-generates a lot of code (in our case: strong-typed DataSets and DataSetTableAdapters in .NET).
However, using source control I find it troublesome to edit and add new things to the DAL. We have started coding new data access by manually writing the SQL statements (in our case: ADO.NET SqlCommands etc) which seems cleaner to me to edit, and especially to see the changes in via source control.
But I'm also worried about mixing the methods of data access. What would you suggest? Stick with the auto-generation method, continue converting to 'manual' SQL statements when changes are needed, or something else?
Edit: Inspired by the nice answers that address the general problem of switching data access strategy, I have generalized the formulation of the question.
The handling of the model data is not very object-oriented. We use .NET DataTables instead of custom objects.