You might see that the Dropbox Community team have been busy working on some major updates to the Community itself! So, here is some info on what’s changed, what’s staying the same and what you can expect from the Dropbox Community overall.
Forum Discussion
AGreenTejada
6 years agoHelpful | Level 5
Placing EXE files in a shared Dropbox folder.
Hello all,
I made a small .NET Core app that publishes as an .exe with surrounding files. Its a small client manager that gets database information from a SQLite database (which is already saved in...
Daphne
6 years agoDropbox Staff
Hey there AGreenTejada, thanks for reaching out to us here!
There would indeed be advantages to hosting the app within a shared folder, however there's a few points I want to touch on here with you.
In general, we don't recommend syncing live databases with Dropbox. You could have issues with syncing as most programs would "lock" a file that is being used, which would prevent the desktop app from syncing the file.
You would most likely need to fully close the app used for editing before the desktop app would be able to sync the data, and you'd need to allow it to fully sync before opening on another device.
Onto your other question, if multiple people try to edit the same file then when the different sets of changes made by each user are saved, it will generate conflicted copies.
Having said that, it might depend on your specific use case and whether people would be directly editing the databases. Would you mind providing a little more info on which files would be edited for example?
Let me know and we can go from there - thanks!
- AGreenTejada6 years agoHelpful | Level 5
Hey Daphne,
Thank you for the reply. As I understand you, it would be difficult to use a SQLite database because Dropbox would "lock" the file being used. But what if I used a JSON file, which is very close to a text file, then told the program to read and write to that? As a JSON text-file, it will only be read once on startup, and written to once on submitting client data. That should solve most problems related to conflicts, right?
- Rich6 years agoSuper User II
AGreenTejada wrote:
But what if I used a JSON file, which is very close to a text file, then told the program to read and write to that?
Your problem isn't the type of data storage. It's the location.
Data is all kept in one place instead of a "local-copy" and a "Dropbox-copy".THIS is your problem. Data isn't kept in one location. The database file, regardless of type, is stored locally on each person's computer. They're not all accessing the same file. They're all accessing a COPY of the same file. As changes are made, the copy is synced back to Dropbox and then back to everyone else's computer.
Any time mutliple people make a change at the same time, or close to the same time, a conflict will be created. Also, what happens if people can't sync (network problem, etc.)? Your program will still be able to read the copy of the file in their local Dropbox, but it may not be the same as the copy on the Dropbox server. Once that computer can sync again, it will create a conflict.
Dropbox is just not a good solution for any files that will be used like a database where the intent is to have multiple people access them simultaneously. It's not a matter of if you'll have a conflict; it's a matter of when.
- Rich6 years agoSuper User II
AGreenTejada wrote:
But what if I used a JSON file, which is very close to a text file, then told the program to read and write to that?
Your problem isn't the type of data storage. It's the location.
Data is all kept in one place instead of a "local-copy" and a "Dropbox-copy".THIS is your problem. Data isn't kept in one location. The database file, regardless of type, is stored locally on each person's computer. They're not all accessing the same file. They're all accessing a COPY of the same file. As changes are made, the copy is synced back to Dropbox and then back to everyone else's computer.
Any time mutliple people make a change at the same time, or close to the same time, a conflict will be created. Also, what happens if people can't sync (network problem, etc.)? Your program will still be able to read the copy of the file in their local Dropbox, but it may not be the same as the copy on the Dropbox server. Once that computer can sync again, it will create a conflict.
Dropbox is just not a good solution for any files that will be used like a database where the intent is to have multiple people access them simultaneously. It's not a matter of if you'll have a conflict; it's a matter of when.
About Create, upload, and share
Find help to solve issues with creating, uploading, and sharing files and folders in Dropbox. Get support and advice from the Dropbox Community.
Need more support
If you need more help you can view your support options (expected response time for an email or ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!