Results 1 to 4 of 4

Thread: Networked database without server

  1. #1
    Join Date
    Aug 2009
    Location
    Belgium
    Posts
    310
    Thanks
    10
    Thanked 31 Times in 25 Posts
    Qt products
    Qt4
    Platforms
    Windows

    Question Networked database without server

    Hi,

    I would like to write a member administration program for our sports club. Several people need to access information about our members, and need to be able to make modifications.

    We have a website with FTP space, but our account doesn't support a MySQL database server. Also, I want people to be able to view and modify the data when they are not online also.

    I was thinking of storing all the data on our FTP account, and to synchronize this with local data stored on everyone's PC. Since member information may be changed by several people independent from each other, this synchronization is not so easy.

    Does anyone know of classes or a framework that supports this ?
    Or does anyone have a better idea ?

    Best regards,
    Marc

  2. #2
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Networked database without server

    Apart from the offline part, you could deploy a webservice on the server that would operate directly on some files located on the server (it could be a SQLite database, an xml file or something like that. The client application would then use this webservice to perform operations on the file. Since there would be a single point of entry (the webservice) you would avoid synchronization issues. But if you want to have offline support, you'll have to deal with merging conflicts that might occur between client edits. Unfortunately this process cannot be automated (if user1 changes 'a' to 'b' and at the same time user2 changes 'a' to 'c' it is impossible to "calculate" which change should be discarded). Of course there are algorithms and methods to help you with that but I'd suggest to avoid it at all cost, it is very unnatural to the users to have to decide upon changes made by other users (most of the time they will force their own changes which might not be what you want).
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  3. #3
    Join Date
    Aug 2009
    Location
    Belgium
    Posts
    310
    Thanks
    10
    Thanked 31 Times in 25 Posts
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: Networked database without server

    Hi,

    Offline operation is a must, because we must be able to use it in the sports club itself, where there is no internet access.

    For the merging : that will have to be something like merging source code in a concurrent version control system, but much less advanced (only a few fields will ever change). Also, every trainer has some people that they manage, so it is unlikely that the data of 2 people is changed simultaneously. Indeed some conflict resolution is needed if it would ever happen. I'm quite good at making such things user-friendly though.

    I was just hoping that something similar (or a better alternative) would already exist.

    Best regards,
    Marc

  4. #4
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Networked database without server

    Quote Originally Posted by marcvanriet View Post
    I was just hoping that something similar (or a better alternative) would already exist.
    You can use some revision control system (like subversion) as your network backend. It would do all merges that can be done for you and would report conflicts that you could translate in a "user-friendly" way to your users.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


Similar Threads

  1. List of Database in SQL Server
    By baray98 in forum Qt Programming
    Replies: 2
    Last Post: 7th July 2009, 09:49
  2. Replies: 5
    Last Post: 2nd June 2009, 19:47
  3. Some Problem with Qt4 link to sql server 2000 Database
    By bangqianchen in forum Qt Programming
    Replies: 0
    Last Post: 29th August 2008, 11:43
  4. QFileDialog Crashes with Networked Drive
    By Rayven in forum Qt Programming
    Replies: 6
    Last Post: 20th February 2008, 02:01

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.