Automatically caches the results of SELECT queries into a cache database specified by either CacheLocation or both of CacheConnection and CacheProvider .
When AutoCache = true, the component automatically maintains a cache of your table's data in the database of your choice. By default, the component incrementally updates the cache, retrieving only changes since the last SELECT query was run if the length of time since the last run has exceeded the CacheTolerance. After the cache is updated, the query is executed against the cached data.
Setting the Caching Database
When AutoCache = true, the component caches to a simple, file-based cache. You can configure its location or cache to a different database with the following properties:
- CacheLocation: Specifies the path to the file store.
- CacheProvider and CacheConnection: Specifies a driver to a database and the connection string.
- CacheTolerance: This property controls the tolerance for stale data in the cache.
- CacheMetadata: This property reduces the amount of metadata that crosses the network by persisting table schemas retrieved from the BlackBaud Raiser's Edge NXT metadata. Metadata then needs to be retrieved only once instead of every connection.
- REPLICATE Statements: When you execute a SELECT statement with AutoCache = true, the component internally calls the REPLICATE statement. The REPLICATE statement enables incremental updates instead of first dropping the cached table.
- Explicitly Caching Data: This section provides more examples of using AutoCache in Offline mode.
- CACHE Statements: You can use the CACHE statement to persist any SELECT query, as well as manage the cache; for example, refreshing schemas.