Why not abstract out what you need the database to do, and then write a
general framework around that? Basically, have an interface which will
perform the search, or call to the database (in the implementation). Then,
when you migrate, you don't have to change your code, you just have to
substitute the implementation of that interface to something MSSQL specific.
This way, you can write the part of the engine which will take the
results from the database and then send them off to whatever application you
Hope this helps.
- Nicholas Paldino [.NET/C# MVP]