Subject Re: Remote access to a dBase database living on a private server from
From Franck <francisvachon.it@gmail.com>
Date Tue, 08 Dec 2020 12:40:59 -0500
Newsgroups dbase.getting-started

Akshat Kapoor Wrote:

> On 08.12.2020 21:17, Franck wrote:
> > Hi there,
> >
> > I need to work with a dBase database that lives on a private server, from the cloud (Amazone web services). I personally know nothing really about dBase, but I need to connect an app that lives on the cloud to that dBase instance.
> >
> >  From what I have seen, dBase as it is currently used works with a graphical interface and this is how they currently access/modify the database's data. However, my application would have to be able to query dBase without going through the UI. The ability (or not) to access that data pretty much determines if we do the project at all, or if we need to migrate everything off dBase into Postgres/MySQL or similar.
> >
> > At the moments, here are my thoughts as to what the options are. As I have little knowledge of dBase, if anyone has done something similar I'd like to get your thoughts:
> >
> > 1 - Use a connector to connect dBase to the broader SQL database the app will use. It seems that there is an ODBC driver (https://media.datadirect.com/download/docs/odbc/allodbc/help.html#page/odbc%2Fthe-dbase-driver.html%23) to do something along those lines.
> >
> > 2 - I've also found this (http://dbase.com/help/8_0/ADO/Setting_up_UDL_Source_dBASEPLUS8ADO_v3.htm). However this is for connection on the same host computer, not a remote connection. It's not clear to me that I could actually setup that same connection remotely.
> >
> > So.... anyone has some idea of whether or not I'm about to dive into an bottomless rabit hole trying to do that? Is rebuilding the dBase part into the wider application a better idea than trying to salvage it with tricky connections?
> >
>
>
> Good Evening Franck,
> I am not very experienced in cross platform linking and hence will not
> comment much.
>
> I assume that the data transfer is not a one time job but you will be
> requiring periodic transfers. One time transfers are damn easy
>
> There are people who have used dbase to connect to data on cloud but you
> want the other way round so the hurdle as I see them is.
>
> dBase is windows based whereas cloud services are unix or similar and
> there maybe issues in transferring data.
>
> But there is silver lining. dBase gives you an option for building a web
> app which acts like any other website.
>
> Using a web app running on the private server you would be able to
> retrieve data as per your requirement. The data would be returned as a
> webpage which you can process.
>
>
> OR
>
> Use a timer to execute a dbase exe upload the data to your cloud
> periodically. With ODBC drivers and connections strings (very similar to
> those of php) the data in the dbf tables can be periodically updated to
> cloud of your choice.
>
> OR
>
> Ask the administrator of the private server to switch to MariaDb/ MySQL
> both of which would be easy to access for you.
> But this switch is not easy. A lot of change in coding would be required
> at his end.
>
>
> OR
>
> Export data at the private server to txt files. And then upload them to
> cloud where you can process them. With few lines of coding these files
> can be sent as an email attachment.
>
>
>
>
> Regards
> Akshat

I see. I did not know about the webapp option. This maybe be OK... although since their current app is not built as a webapp, I am not certain if they will be willing/able to make that conversion (as part of the reason I need to talk to it from that app is to keep those modules which already work w/o putting more work into it).

The data dumps using the ODBC driver might also be an option (then I would have to work along the lines of the links posted above). This isn't an heavy-use app, few users at the organization only need to access it. They currently live with daily data "updates" so anything equal or better than that would be acceptable. It's not a huge volume of data, nothing that we couldn't transmit say every few hours without been too greedy, bandwith-wise. This is less work as they don't need to touch the application. Then I just need to use the connector to plug that into a mysql/postgres DB on my side and we could work.

Migrating the DB to Maria/Mysql seems like too too much. Also they need to keep using that system for others things. As I don't know dBase I don't see how I can do it myself in a reasonable amount of time either.

The text file option seems like the poor man's way! Though perhaps to just check things & prototype rapidly I could use that....

I guess the best way would be to use ODBC. I'm a little bit weary that the devil will lie in the details here, but if I can make that to work I would probably be the smartest solution.

Thanks Akshat!

Anyone else with experiences regarding similar problems?