Question install MySQL in each computer the application run on?

The

Member
Joined
Nov 27, 2014
Messages
16
Programming Experience
3-5
I have MS Access application, forms, report and database. It would be better for me to switch to VB.Net to have better and undependant application.
My first question as newbie converter, do I need to install MySQL localhost in each computer the application run on? Or VB.Net have built-in functionality for building SQL db. For 4-6 tables, with limited records (100 max) would MS Access db would be better and easier to hook with my VB.Net user interface?

Thanks
 

jmcilhinney

VB.NET Forum Moderator
Staff member
Joined
Aug 17, 2004
Messages
14,295
Location
Sydney, Australia
Programming Experience
10+
A VB.NET application can connect to pretty much any database and many non-database data sources. There are various database-specific providers and ADO.NET also supports any OLE DB or ODBC data source. Some of the most commonly-used databases would be SQL Server, SQL Server Express, SQL Server CE, Access, MySQL, Oracle and SQLite. Visual Studio has integrated tools for working with SQL Server, including Express, and also SQL Server CE.

If you were going to use MySQL then you certainly wouldn't install it on every machine. MySQL is generally a good choice if you want multiple clients to connect to a single server. If you want each user to have their own local database then you can use Access but I'd suggest that SQL Server Express, SQL Server CE or SQLite might be better options. SQL Server Express does require a server but deployment is pretty much transparent to the user and it can offer extra features as a result. The other options are all file-based and may require a DLL or two to be deployed with your EXE.
 

The

Member
Joined
Nov 27, 2014
Messages
16
Programming Experience
3-5
Thank you for the very informative comment.

So, if I go with SQL server, I would use a single file? or each client have to install it on his computer separately?

Best
 

jmcilhinney

VB.NET Forum Moderator
Staff member
Joined
Aug 17, 2004
Messages
14,295
Location
Sydney, Australia
Programming Experience
10+
Thank you for the very informative comment.

So, if I go with SQL server, I would use a single file? or each client have to install it on his computer separately?

Best
Like MySQL, SQL Server is a server-based database. That means that you must install a server somewhere. In both cases, you have the option of installing one database server on a single machine and then having each client connect to that one server or installing a database server on each client and having each client connect to their own database. The option you choose depends on the way your application is supposed to work, i.e. whether it is intended to have a single, shared repository of data or each client has their own data. That's the first decision you need to make.

Assuming that you want a single, shared repository of data, you might install MySQL, SQL Server or SQL Server Express on a single machine somewhere and then have each client connect to that. If you want separate data for each client then you would probably go for SQL Server Express to be installed on each machine because it's cheaper than full SQL Server and it's less complex than either of the other choices. Like I said, there is functionality built into VS that allows you to work with SQL Server Express databases. You can add an MDF data file to your project so that it becomes part of the application itself. You deploy the MDF data file with your application EXE and then it will get mounted by your SQL Server Express instance automatically at run time.
 

rudalboy09

Member
Joined
Nov 28, 2014
Messages
8
Programming Experience
Beginner
I have MS Access application, forms, report and database. It would be better for me to switch to VB.Net to have better and undependant application.
My first question as newbie converter, do I need to install MySQL localhost in each computer the application run on?
yes if you want application that has a single database, if your application is connect with many computers, i suggest you to connect the database in server / computer has it.

Or VB.Net have built-in functionality for building SQL db. For 4-6 tables, with limited records (100 max) would MS Access db would be better and easier to hook with my VB.Net user interface?
maybe, vb has not limited records.

Thanks
 

The

Member
Joined
Nov 27, 2014
Messages
16
Programming Experience
3-5
Like MySQL, SQL Server is a server-based database. That means that you must install a server somewhere. In both cases, you have the option of installing one database server on a single machine and then having each client connect to that one server or installing a database server on each client and having each client connect to their own database. The option you choose depends on the way your application is supposed to work, i.e. whether it is intended to have a single, shared repository of data or each client has their own data. That's the first decision you need to make.

Assuming that you want a single, shared repository of data, you might install MySQL, SQL Server or SQL Server Express on a single machine somewhere and then have each client connect to that. If you want separate data for each client then you would probably go for SQL Server Express to be installed on each machine because it's cheaper than full SQL Server and it's less complex than either of the other choices. Like I said, there is functionality built into VS that allows you to work with SQL Server Express databases. You can add an MDF data file to your project so that it becomes part of the application itself. You deploy the MDF data file with your application EXE and then it will get mounted by your SQL Server Express instance automatically at run time.
Thank you very much. That was helpful

yes if you want application that has a single database, if your application is connect with many computers, i suggest you to connect the database in server / computer has it.



maybe, vb has not limited records.

Thanks
Thanks sir
 
Top Bottom