Some Dos and Dont's in designing website databases
1. Choose the right data storage device
Do not use XML files as the sole data storage device, for XML files are not ideal for constant data operations (delete, insert, update).
Do not use Access database, because a. Access Database is not suitable for multiple concurrent users; b. Access database is not scalable.
SQL server is a preferred database choice for most .NET developers, for the powerful support provided by VS studio, high performance, scalability and a wide range of tools in database administration.
2. Dataset or custom data providers
DataSets is essentially a detached mini-database, it carries with it considerable overhead. With a typed dataset, every bit of change of the database schema means it has to be rebuilt.
On the other hand, custom data providers are more flexible and elegant. But it takes more time to design and code.
3. Stored procedures or ad-hoc text queries
Most literature I read prefer stored procedure for faster execution. Personally I like text queries, for its flexibility and nimblnes.
4. Do cache data for better performance
This has been stressed across all website building textbooks. ASP .NET 2.0 has also enhanced the Cache class.
5. Store connection strings and other settings in one single file, eg., web.config for .net applications.
All the above is culled from the book "ASP .NET 2.0 Website Programming: Problem - Design - Solution" by Marco Bellinaso, they may have been twisted unwittingly by me.