Link to home
Start Free TrialLog in
Avatar of bylj
bylj

asked on

DB Selection

Client is interested in developing a custom-made db-driven application. Currently he has 5-locations and plans to open couple every yr. The db-design is simple(MS-Access would also do the trick), but cost is an issue.

What would you recommend for?

1. The combined 5-locations db size is 50MB, and it would grow to about 20MB/yr.

2. The locations are not connected, but is interested in synchronizing the data every 1-Hr, plus DOESNT want to shut down db while synchronization occurs(MS-Access requires shutting down of db. Probably 3rd-party synchronization utility would solve this problem)

3. Not interested in buying MS-Access, as it would require a new purchase for every new computer/location. Would you recommed FoxPro or Paradox or MySQL(if its FREE), where data-files can be extracted and the client DOESNT have to purchase any db-product

4. Blob capability is preferred?

Suggestions/recommendations

ASKER CERTIFIED SOLUTION
Avatar of YodaMage
YodaMage

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of bylj
bylj

ASKER

"You should consider a system of site DB's, with CDS stations, with data utilizing a simple boolean flag
or timestamp for selection criteria. At that point, a server side application could link to 'master'
DB, then write over updates with little to no impact on CDS stations."

I'm a novice, please elaborate on it....
I see you have most of the possibilities checked, but I think the cost aspect should not only be checked against the initial software cost, but more to the long term, also looking at the maintenance cost as that's often more as half of the complete cost.

Seeing your requirements I would tend to use MS-SQL or MySQL with a VB frontend. VB has the advantage that only one license is needed to create executables.
The access alternative (the runtime environment) is too "weak" and would requiren extra testing..

As the database is relative simple, you could use access to do some prototyping before building the final version...

Nic;o)
Avatar of bylj

ASKER

Once again, neither MS-SQL nor MySQL is free.....

Looking for a free db.
Avatar of bylj

ASKER

What about FoxPro?

There is actually a similar product(Custom app) available, which we will be simulating plus tons of customization will be applied. And the client feels that if the available product can have a FREE built-in db then why cant he get the same answer from us.

Available product:
http://www.marketpower.com/mpi/products/cpw/cpwdl.htm

Its called 'CheckPayWindows'

There is another product which uses 'FoxPro', but the vendor doesnt have a website.
InterBase is Free:

http://www.ibphoenix.com/

FoxPro is a dated low end desk top data structure with problems keeping data integrity. It is also already heading torward the world of unsupported death. MS has made many moves that make most believe they will eliminate it. With Access as a much stronger DB in the same desktop niche, they really have no need for it.

What I was saying is this, in as much laymans speach as possible considering the topic. I would write a basic application, either in C++ (C#) or Delphi, (VB is really not robust enough and is a POS in my opinion), which would run on the individual machines at each site. This application would utilize the concept of client data sets. A client data set essentially allows you to retrieve targeted data and work on it without effecting the main DB on the server. You then post these updates to you server at the site. This 'batch' type posting keeps transactions down and eliminates both points of failure and network traffic. In your case it will also allow an easier 'snap shot' of the data when your update occurs. This is the basic system. Then, I would have a second tier server with the 'master' DB. The site servers would cycle through their data looking for updates, either by boolean at the row level, (a simple column called update holding either a 'Y' or 'N; would do), or by a column holding the time stamp of last change or insert, which could also be sorted on. You could send these updates to the main DB at any time you like where they would merge. Then you would return updates from all other sites 2,3,4 back to 1. This would keep all sites up to date, and also give you a remote master copy which could be used in case of loss or corruption. It give you a central place to backup data, and the price of the server would actually be less than multiple tape devices anyway.

OK?
Avatar of kretzschmar
i go confirm with yodamage,
would be the best choice in my eyes,
because interbase is free and is a
real server based sql-database and stable

but, if your customer will not invest in a database or any tool,
then i guess the development of this app gives more worry than business

meikl ;-)
I believe in your case MySQL would be free - since you are not selling the application. Why not email them to confirm?

I would tend towards MySQL - it has built-in replication, which would be an excellent solution for you.  Sites could have the option of a local server if they needed fast access, or could initally use a remote server...
bylj---->  You have asked 57 questions at this site and only closed 39 of them, which is against our site's Guidelines.  Please click the HELP DESK link on the left regarding Member Agreement, Guidelines and the Question/Answer process.  I will be updating all your open questions with this information and monitor them for closures.  Please return as quickly as possible to complete these questions.  If special handling is needed, comment here with details.

Open today:
https://www.experts-exchange.com/jsp/qShow.jsp?ta=oracle&qid=20091636
https://www.experts-exchange.com/jsp/qShow.jsp?ta=win2k&qid=20241395
https://www.experts-exchange.com/jsp/qShow.jsp?ta=win2k&qid=20241043
https://www.experts-exchange.com/jsp/qShow.jsp?ta=dbgen&qid=20247085
https://www.experts-exchange.com/jsp/qShow.jsp?ta=msaccess&qid=20237668
https://www.experts-exchange.com/jsp/qShow.jsp?ta=oracle&qid=20088755
https://www.experts-exchange.com/jsp/qShow.jsp?ta=hardgen&qid=20228196
https://www.experts-exchange.com/jsp/qShow.jsp?ta=visualbasic&qid=20248490
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20108859
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20091635
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20088839
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20087841
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20085748
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20081510
https://www.experts-exchange.com/jsp/qShow.jsp?ta=asp&qid=20081065
https://www.experts-exchange.com/jsp/qShow.jsp?ta=msvisdev&qid=20088291
https://www.experts-exchange.com/jsp/qShow.jsp?ta=networkgen&qid=20220006
https://www.experts-exchange.com/jsp/qShow.jsp?ta=networkgen&qid=20198006

It helps you tremendously to remain active in all your open questions, provide ongoing feedback to the experts who step in to help you so that your goal can be achieved quickly, and the expert(s) awarded with points for their excellent help.

Your responsiveness to these is appreciated.

Moondancer
Community Support Moderator @ Experts Exchange
Admin notified of User neglect. Force-accepted by
Netminder
Community Support Moderator
Experts Exchange