Help needed for WinForm Application RRS feed

  • Question

  • Hi-

    I don't know whether this is the right forum to ask this question but ........

    I am implemented one stand alone winform application developed in .Net 2003 and used as MS Access Database but the Database size is increased to approx 2GB. So, My application performance is screwed. I would like to improve performance. I am planning to go for SQL Express.

    Main problem is when i change the tabs each time it has to fetch the database, so getting the results from MDB it's taking almost couple of minutes so i need to save the time on this.

    Can some one help me to advice whether it will help me to improve the performance. Which is better option for me whether SQL Express or SQL Server or any other DB or Ideas

    Thanks in advance.

    Friday, April 27, 2007 4:11 PM


  • First off, make sure you have index's in the proper locations in your database. While 2gb is big for Access, if you have the proper index's, it should query fast This is unless you are querying across a network, which you are just stuck then if using access. If you are querying across a network, then absolutely switch to SQL Express or SQL Server.


    Second, compact your database to make it smaller. (probably already done this though) Access just grows and grows no matter what you do. This will help if again, you are querying across a network.


    Lastly, SQL Express should work well for you, unless your database gets large, then you will need regular SQL Server. I think 4gb is the max database size. However this will only be the case if my first comment about the indexes is fixed. Don't judge your SQL Express database size by the Access DB size. SQL express is much more efficient about storing data, and it doesn't have the growth issue like Access. SQL Express is free and you should try that. It is very easy to upgrade from SQL Express to SQL Server. Mostly because they are the same.  If you switch to SQL Server (express or otherwise) make sure you use OleDb to access the database. Stay away from ODBC.


    If anyone tells you go to go something other than SQL Express, or SQL Server Standard (Like oracle or something) don't listen to them, they don't know what they are talking about.


    If it is taking a couple of minutes to query something, I bet is it's either because you are querying across a network, or your design has flaws. Most of the time I've seen database performance issues, it concerns index's. 


    Hope this helps.



    Friday, April 27, 2007 9:46 PM