We use the AccessDriver to load data from a mdb-file. That file may be open by another application which may also change that file. Is it possible to get notified by HXTT AccessDriver if the other application did some modification (insert, update, delete)?
I saw that there is a method AccessDriver.setTransactionWatcher(r), but I could not find any documentation for it. Can that be used to get notified about modifications?
|
>AccessDriver.setTransactionWatcher(r),
That feature is using in DbAdmin GUI for client/server mode, remote control/access admin to monitor/manage connection,table, and so on.
2017-06-29 provides EXTERNAL_STATUS TOTAL_STATUS in Pseudo Table INFORMATION_SCHEMA.DATABASES to monitor database modifcation status.
If you run HXTT Access with other MS Access applications, and want to know whether the content has been modifed after you load it. You can use
SELECT * FROM INFORMATION_SCHEMA.DATABASES;/*When your jdbc url is a database*/
SELECT * FROM INFORMATION_SCHEMA.DATABASES where TABLE_CATALOG='test.accdb' /* When your jdbc url is a directory or zip file */
Through comparing the MD5 difference between two same queries, you can know whether that file has been modifed by external program, or your program.
EXTERNAL_STATUS column: a modification md5 which exclude your current modifcation.
TOTAL_STATUS column: a modification md5 which include all modifcations.
It should be availabe after about 4 hours.
|
Great, thank you! I'll test it as soon as possible.
|