January 6th, 2011, 12:58 AM
Database restart required : Tries to update the database using C# .NET application
I am trying to update the FireBird database from C# .NET application. Updation of database from .NET is working fine. But once we do SELECT * FROM <table-name> on FireBird database command prompt then it will not display the recently added records. So for updated display we have to quit the FireBird database and re-login.
So please help me.
January 6th, 2011, 03:36 AM
Sounds like in the commandline you are running in REAPEATABLE READ isolation level (I think it's called SNAPSHOT in Firebird).
Try to issue a COMMIT (or ROLLBACK) from isql in order to end your current transaction there. Then you should see the updated rows.
As an alternative you might want to change the isolation level from within isql.
January 6th, 2011, 07:15 AM
Thanks a lot. It's working fine.
I have one small doubt, I did an Transaction commit on C# .NET. Is it not enough to show the updates on isql? Why again we are giving commit on isql?
January 6th, 2011, 07:44 AM
Because you need to end the transaction in isql
Originally Posted by shibumathew
The default isolation level is "SNAPSHOT" also known as "REPEATABLE READ". In this level your transaction sees a consistent state of the database as long as the transaction is open. It will not see any changes from other transactions.
So you either need to end your transaction or change the isolation level to "READ COMITTED".
January 7th, 2011, 12:51 AM
Thanks a lot. Now it's working perfect.