For years Microsoft-oriented developers have struggled with the problem of what to use for a database in single-user applications with modest data storage requirements. The choices for this embedded database problem space have boiled down to Microsoft Access or MSDE (or its current replacement SQL Server Express), or to non-Microsoft applications such as SQLite or SQLBase. On the one hand, Access and SQL Server Express are rather heavyweight when all you want is a simple storage engine that's easy to redistribute. On the other, the non-Microsoft alternatives require bringing another vendor into the picture and worrying about such issues as long-term support and compatibility with the changing landscape of development tools coming from Redmond.
The article continues at