We are redesigning an old VB6 application in Net. The application makes extensive use of a database and includes management of club members and their results in the competitions that they partake in.

So, if we are editing a club member's name, address, etc. it is obvious not to send the data back to the database until the entire edit or add operation has been completed by the user.

But how to do this when registering and editing scores of matches? The advantage of sending each added or edited score directly to the database is that it enables live updates of the rankings. The disadvantage is that undoing changes may be more difficult and that there may arise performance problems when the connection to the database has a high latency. The latter problem might come up at some stage, but for the unforseeable future we will work with desktop versions of the database.

I would be interested in descriptions of best practices and live experiences. Thanks!

  • do not use a hex editor! found that out the hard way! (:-D)
    – Sam
    Sep 18, 2013 at 6:39

1 Answer 1


Personally, I would consider the end architecture that you are aiming for, and think about what consequences this has on the implementation.

The simplest approach is to do a 'database application' where you make the application tightly coupled to the database. Its simple, quick and works well on a desktop, and as a single user system, data locking strategies can be non-existent. However, high latency to the database is not an option with this approach - so don't expect to make this an internet or hosted solution in the future.

The other end of the scale is to have a multi-tier architecture. Database, behind a stack of web services (either SOAP or REST) that enable a client application (or another web server providing a web interface) to query and update data in the database. This approach scales to the internet and can be hosted fairly cheaply. It can also be set up on a desktop, but is a database and a web server... but is much more development effort.

Since you are asking this question, my instinct is to recommend the first approach to you, on the basis that you are more likely to be successful and have something working. At a later stage the advantages of the distributed approach for the club, such as not being reliant on 'Fred' doing all the updates as the database is on his laptop can be introduced without the time pressure of needing something as soon as...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.