Connecting to ms-access database

I don’t know.

From what I read it looks like “User DSN” and “System DSN” have “owners” that can use the database.

What I’m unclear about is if “File DSN” - which doesn’t need to be local - is meant to be for sharing in a home network only or if it will take online files as a source.

Can you install Visual Studio?
It is feature rich so it might be better to use that if you can.

is this a free software or paid software ??

can it communicate with php online files ??

vineet

Visual Studio is a paid product. Visual Studio Community is free but has limitations to what it can do.

There is also VS Code, which is free as well.

VS Code can definitely work with PHP.

AFAIK the Community Edition is free. It doesn’t have a lot of the features paid versions have so depending on how serious you think you will get doing Microsoft work it should be good enough.

I think it should be able to work with any file that has permissions set to allow it. Though you may need install additional “tools” for it to work with PHP (it is Microsoft-centric of course)

IMHO it’s quite a good IDE. A bit of a learning curve to get the hang of using it (much like any IDE). But once you learn your way around it many things “do the hard work” for you.

Visual Studio Code is a great editor for PHP development. You get features like syntax highlighting and bracket matching, IntelliSense (code completion), and snippets out of the box and you can add more functionality through community created VS Code extensions.

No matter what you do you are going to need a middleware to manage the connection syncing of the databases. The problem is you are going to need something to connect to your server or your desktop no way around that. Be it a remote connection an api or plain old FTPing a file something is gonna have to manage that connection. I suggested C# to build a simple windows application but C# is not the only language as many can do this and even php. But you have to understand that there is many ways you can accomplish this and your question is vague in the sense that you know what you want to accomplish but you have no idea on how you want it to work end to end. You will need to decide on what route you want to proceed on such as building a restful API or direct socket connection or file upload or FTP. All these ways are different and all can accomplish the same thing its just a matter on what is best for you and your process. But all in all your still gonna need some sort of middleware suited for your end goal. So API?, FTP?, Sockets? and you must understand each of these will need authentication for security and some are more complex than others. Research is key when it comes to these type of applications as there is no one solution fits all.

hi jgetner

You are saying we can also create a application in php which will communicate with desktop and server.
can you tell me some more details about what php functions or command will be used ??

vineet

You can run php from the console and run your script to check for changes in your access database and send them to your server using cURL or write them to a file and send them using FTP and then have your server process the request and update your server database as needed.

hi jgetner

i didnt understood it

where is the desktop communication in it ??

vineet

That method removes the difficult part, which is having your server connect into your desktop PC database. You run the code on your desktop PC to export anything that’s changed in your access database to a file, upload it to the server, then run a script to import it on the server. To deal with changes that happened on the hosted database, you have a script on the host to scan for changes and export them, then download that file to your PC and merge the changes.

Of course, your two databases will need some way to know (by timestamp, perhaps) exactly which records have changed since the last export, and some logic to deal with situations where the two have been updated at the same time but you’re not sure which update is more important. On either of them, if you have control over the database, you could introduce some extra tables to store details of which rows have changed in each table, then your export routine only needs to extract the records based on data in those extra tables, then clear the tables ready for the next export.

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.