I could do the implementation such that the client is being updated constantly from its Server, when it reads from the MySQL database and update on the client, by using the Timer. Upon each ticks, it would read from the server database and update it. But I find this method is too computational intensive. Are there some better ways to achieve what I want?
I remember when last time when I do something on the Table Adapter, it is able to automatically & constantly update using this command below:
this.drinks_QuantitiesTableAdapter.Fill(this.drinks2005DataSet.Drinks_Quantities);
But here I am not using any kind of Table Adapter.

2 answers
If you're looking for a way for your C# application to be automatically notified, when a MySql server database is updated by another user, then I don't think there is one.
My knowledge of MySql is scanty but I believe the later versions support 'triggers' which cause a bunch of SQL statements to execute when some event occurs such as a table getting updated. However, even if you set up a trigger, I'd be very surprised if whatever .NET dataprovider you're using enables you to register a .NET event which fires when the trigger fires. ADO.NET is after all a disconnected architecture.
So, if you need your view of the database table(s) to be as up-to-date as possible, I don't think there is an alternative to refreshing your dataset at regular intervals using a timer.
However, if this is causing a performance problems, you could have automatic refreshing take place less frequently but allow the user to request an immediate update by pressing a button, say.
Incidentally, although I don't use TableAdapters, it's news to me that calling the Fill() method enables subsequent automatic updates unless there's some sort of polling going on in the background.
answered one year ago by:
17279
yes, the timer tick interval is a factor, thanks.
answered one year ago by:
494