Hello, I am new here. I would like to ask opinion from you guys on what are the best options available for me to develop a database system using Visual basic? I am using Visual Basic Express Edition.

My problem: I am currently developing a toolkit that needs the user to insert information and put it into a database system. After that, I need to extract and analyse the data and present it in graphical form (pareto, histogram, and pie chart) also in VB.

I am not familiar with VB, and based from what I've studied and from my research, there are few options. So, my questions are,

a) Is it possible for me to use VB stand alone as the database and perform all the required actions needed using it?


b) is it better to use Excel and link it to my VB program?


c) use Microsoft Access instead, and link it to my VB program?

Please help me on this matter. Thank you in advance.

You can use Access for the database back end and do all the programming through vb. Likewise you can install (free) MS SQL Express (which would be better in my opinion) and use that. I would not use Excel. Depending on which version of vb you are using you might want to reconsider which forum to post in. This is the forum for vb 4, 5 and 6. The vb.net forum is more current. Which are you using?

Since you state that you are using a VB Express Edition, this question should be moved to the VB.Net forum.

Depending on the volume of data and security needs, you could use any of the options you listed, but I would stay away from using Excel files since that option will provide very limited DB functionality. If you foresee a need to dump a set of data out for use in Excel, there are several options available for doing this.

For a simple DB structure and relatively small amount of data, you could use the .Net DataTable class to save/load your data to/from an XML file. Your DB would be held in memory once loaded.

MS Access can be a pain in regards to the driver bitness. You can not have both 32 and 64 bit versions of the driver installed.

Another option to consider is SQL CE that is very light weight and gives an easy upgrade path to SQL Server if that need would ever become necessary. You should have been given an option to install it when you installed VB express (at least with the more recent versions).

And as Jim already mentioned, you could always install SQL Server Express.

To Jim and TnTinMN,

Thank you for your insights. And I'll re-post this question again to VB.net since you mentioned that I might have posted to the wrong forum.

About SQL Server Express, I think I have downloaded it when I re-installed my VB Express Edition since when I try making a database project (just as an example from a book) it says that I need the SQL server, so I've reinstalled and downloaded the SQL.

So, based on both of your answers, MS Access is the best option for large database that may contain data for years, and it's better than excel, right?

My opinion excel is the worst choice. Access is nearly as bad.

I would go with either SQL Server Compact or Sql Server Client.

For a large database you should go with MS SQL. I had to maintain an Access database for years that was not developed with ADO so porting it to SQL was too much trouble for the developer to consider. As a result, when the database grew beyond a certain point I had to repair it on a weekly basis.

So, Jim and TnTinMN,

I think I'll go with the SQL option that you guys have mentioned. So, the SQL that I have installed, is the right SQL right? Is this toolkit is possible to develop using VB Express, or I need to install another version of VB?

And Jim, thanks for moving the post to VB.net, I have posted new thread using the same question and I don't know how to remove it sorry for making it a redundant post :/

Not a problem. I removed the duplicate. I have Visual Studio 2010 ans MS SQL Express. As well, I installed the (free) MS SQL Server Management Studio. You can find instructions on how to install it here. The Management software greatly simplifies creating and managing databases.