Desktop database application can connect to internet database server?

Can I use a Desktop database application to connect to my internet database server, like an Web database application?
What are the differences between Desktop database application and Web database application?

The short answer is yes you can connect your desktop app to your internet db server. There aren’t any real differences.

The big issue is security. You NEVER want your database to face the public.

In a hybrid situation where you have a web application public facing with internal desktop apps connected to the same db engine - no problem.

But if you want to access the db over the internet use the handle special url facility in Xojo Web apps to create a db server.

I want to access my MySQL database server installed in my office.
Access is made by 3-10 users (my employees) with passwords through laptops with mobile internet connections.
Is this secure and reliable with a Desktop database application?

Your best bet would be for the users to establish a vpn tunnel with your office network. That would be secure. There are a few software based solutions such as openvpn, logmein, and neorouter that you could use. As Wayne said, do NOT expose your database to the internet.

So for an web desktop database application I must use a vpn tunnel with my office network and for an web database application not?

My ISP does not allow direct access to my MySQL database over the internet. Instead I have PHP pages on my website which my application call to retrieve and submit records to the database. I have this working well from Xojo.

Correct. A web application (Xojo or PHP) runs on the same local network as the database. It can talk to the internet on the wan, and talk to the database on the lan. That allows the database to be secured to only respond to requests from the lan, so it’s protected from direct attack from the internet (the wan).

If you want a desktop app to talk to a remote (internet) database, you can set up a web database app as an intermediary. In your case, you would have to have a web server hosted on your office network that accepts traffic from the internet. You could write a web app that your desktop app could talk to. But since you already have an existing desktop app, and the database is on an office network, the easiest solution would be a vpn tunnel.