Solved

What is the best choice of database for multiple user access on an FTP site?

Posted on 2011-02-26
14
361 Views
Last Modified: 2012-05-11
I want to develop a simple company database to keep track of contacts, communications, bugs, etc., that is accessible by all of our employees.  I will write a "front-end" in VB.NET 2010 to link to this database, and I will install it on everyone's system (there are only a few of us), but I need to have the database accessible to everyone, and it is likely that there will be times where more than one of us will be connected to it at the same time.  We have an FTP site so, ideally, I would like to upload the database there, unless there is a good reason not to.

So my questions are:

1.  What database should I use?  I currently work with MS Access, so I would be very happy if that could work.  I also prefer using Access since then I don't have to worry about installing a server on the client's system.  However, the little research I have done suggests that Access on an FTP won't work well.  Is that true, or is there a way I can use Access in this case?  Or, if not, what database would you recommend?

2.  With whatever database is recommended, how do I make a connection to it on an FTP server?

Thank you very much,

Vijay
0
Comment
Question by:vdurbal
  • 6
  • 4
  • 2
  • +1
14 Comments
 
LVL 16

Expert Comment

by:Kalpesh Chhatrala
ID: 34990177
you can use SQL Server with VB.Net

check below various  tutorial website.

http://www.dotnetspider.com/tutorials/
0
 

Author Comment

by:vdurbal
ID: 34990221
Thank you.  So is using MS Access not feasible?
0
 
LVL 16

Expert Comment

by:Kalpesh Chhatrala
ID: 34990235
Depend on your Database Size and traffic.

if your data is not large then Ms acess is also feasible.
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 34990480
No, Access wont' work thru FTP and in general, no other database will either.  MS SQL and MySQL can both be accessed remotely thru the network on their own ports if they are setup properly.  They are also designed for multiuser access.
0
 

Author Comment

by:vdurbal
ID: 34992099
What about using SQLite?
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 34992233
SQLite is a fine program but it is not a "client/server" multiuser program.  It has limited multiuser capability. http://www.sqlite.org/faq.html

FTP and mapped drives are not optimal for multiuser database access.  "client/server" programs like MS SQL and MySQL have the methods built-in to handle multiple user requests without problems.  FTP and mapped drives depend on file locking to share flat file databases when one of the users tries to write to the database.
0
 

Author Comment

by:vdurbal
ID: 34992278
I see.  So it looks like FTP won't be appropriate.  Where would be the best place to host this database, so that it is easily accessible from multiple locations?  Also, I got the impression that while SQLite is not ideal for high concurrency, that it was all right for relatively small numbers of users accessing the database at a time.  There are only 4 of us that could possibly be accessing this DB at once.  Is that still too much for SQLite?  I've never implemented a "client/sever" system, so I'd like to avoid having to do so, if I can.  But if you think I have no choice, what in your opinion is my best option, to work with a simple VB.NET program?  
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 16

Expert Comment

by:AlexPace
ID: 34992338
Consider this web site.  When you view this question, code on the web server pulls your original question and all of the comments out of a database and then puts them together to build a web page that is available all over the world.  

A file-based database like Access or SQLite would work fine as a back-end database for a website with 4 users.
0
 

Author Comment

by:vdurbal
ID: 34992344
Great!  So can you suggest any resources that can walk me through connecting a .NET program on a local machine to such a database that is hosted on an FTP site, or some other location?  Thanks.
0
 
LVL 82

Accepted Solution

by:
Dave Baldwin earned 250 total points
ID: 34992377
Are your users on the same LAN in an office?  Or are they in different locations?  In the same office on the same LAN, you could use a local web server or maybe even a shared folder for your database.  If they are in different locations, you will have to use web site with a front end for Access or SQLite or you will have to use one of the client/server programs, usually on a web site.
0
 

Author Comment

by:vdurbal
ID: 34992424
Unfortunately, everyone is in a different location.  I'm sorry for being so clueless, but how would I find a web-site with a front-end for Access or SQLite?  I currently have a MoibileMe account.  Could I set up a place to host my database there?  Thanks, again.
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 34992513
I dont' know about MobileMe.  Are you and the others Mac users?  

You would have to write a web page as a front end for Access or SQLite.  Which would also probably require a login page also to keep others out.
0
 
LVL 16

Assisted Solution

by:AlexPace
AlexPace earned 250 total points
ID: 34992998
Using FTP where each user has an instance of a file-based database and then uploads changes via FTP would create a synchronization nightmare.  Basically unworkable.  Data would be lost.

The only data-safe way to do it with FTP would be to upload small text files containing SQL statements and then poll the FTP site to download a results file when it became available.  You would also need to write a service running on the FTP site that would pick up incomming files, execute the SQL statement within, then collect the results (if any) and write them to an output file.  This would be more work, for a slower app, than just making a web app.
0
 

Author Closing Comment

by:vdurbal
ID: 34994553
Thanks for your advice!  I appreciate it!
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

APEX (Application Express) is used to develop a web application from Oracle. SQL Workshop is one of the tools that comes with Oracle APEX to query or modify the database objects or to make any changes to the structure.
CCModeler offers a way to enter basic information like entities, attributes and relationships and export them as yEd or erviz diagram. It also can import existing Access or SQL Server tables with relationships.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now