Application Note for QuNect ODBC for QuickBase

Reducing Integration Reads When Keeping an on Premises Table in Sync with Quickbase

Instead of running a SELECT statement on a table to see if any records have changed or appeared since the last time you checked you can use a special SELECT statement that doesn't incur any integration reads. You can run this SELECT statement every five seconds and it will return the last modified time of each table in a Quickbase application. The result is a table like this one below. The SELECT statment looks like this:

            SELECT * from appdbid~dtm
    

or

            SELECT * FROM openquery(QUICKBASE, 'SELECT * FROM appdbid~dtm')
    

The part of the table name before the tilde must be the application identifier. You can learn how to determine the application identifier of your Quickbase application here.

You will have to store the lastRecModTime on your on premises system and compare that to the current value. If the two differ then you need to execute a SELECT statement against that table to retrieve the updated information. And you'll have to update the lastRecModTime on your on premises system with the new value.

id type lastModifiedTime lastRecModTime
NextAllowedTime system 2024-06-28 22:11:08.1040000 NULL
RequestTime system 2024-06-28 22:11:03.1040000 NULL
bc45c8xji app 2024-06-26 07:33:50.8300000 2024-06-26 07:33:50.8300000
bc45c8xjj table 2023-03-15 10:56:21.8470000 2023-03-15 10:56:21.8470000
bc45c8xjk table 2020-03-04 10:19:17.8600000 2020-03-04 10:19:17.8600000
bc45c8xjm table 2018-11-17 11:30:46.5970000 2018-11-17 11:30:46.5970000
bc45c8xjn table 2023-05-03 10:26:53.5370000 2023-05-03 10:26:53.5370000
bc45c8xjp table 2018-02-14 19:31:21.9870000 2018-02-14 19:31:21.9870000
bc45c8xjq table 2022-07-10 09:03:36.0570000 2022-07-10 09:03:36.0570000
bc45c8xjr table 2021-01-14 18:03:41.2700000 2021-01-14 18:03:41.2700000