This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
integration:rdbms:oracle:updates [2011/03/31 22:10] doc |
integration:rdbms:oracle:updates [2016/06/28 22:38] (current) |
||
---|---|---|---|
Line 11: | Line 11: | ||
[[integration:rdbms:oracle:databases|Databases]] | | [[integration:rdbms:oracle:databases|Databases]] | | ||
[[integration:rdbms:oracle:tables|Tables]] | | [[integration:rdbms:oracle:tables|Tables]] | | ||
- | [[integration:rdbms:oracle:indexes|Indexes]] | | + | [[integration:rdbms:oracle:constraints|Constraints]] | |
+ | [[integration:rdbms:oracle:datatypes|Datatypes]] | | ||
[[integration:rdbms:oracle:queries|Queries]] | | [[integration:rdbms:oracle:queries|Queries]] | | ||
**[[integration:rdbms:oracle:updates|Updates]]** | | **[[integration:rdbms:oracle:updates|Updates]]** | | ||
Line 20: | Line 21: | ||
==== Updates ==== | ==== Updates ==== | ||
- | Omnidex is primarily designed for read-only databases. Most Omnidex applications will place tens or hundreds of indexes on a table, and this makes online updates impractical. Omnidex does support limited online updates using the INSERT, DELETE and UPDATE statements; however, these should only be used for low-volume updates on lightly-indexed tables. | + | Omnidex is primarily used on read-only databases; however, Omnidex can also be used on read-write databases. Omnidex supports the INSERT, DELETE and UPDATE SQL statements, and also supports using database triggers to automatically update the Oracle database. There are several restrictions that administrators must be aware of before deciding whether to use Omnidex on a read-write database: |
- | Most Omnidex applications refresh the data at regular intervals such as daily, weekly or monthly. Once the data is refreshed, the indexes are rebuilt, producing an indexed version of the new data. This data can then be deployed into production. | + | {{page>:admin:basics:updates:restrictions_insert&nofooter&noeditbtn}} |
- | For applications that require online updates, applications can use INSERT, DELETE and UPDATE statements to update the table. This approach immediately updates both the database and the Omnidex indexes. Alternatively, Omnidex allows Oracle triggers to be installed on a table that copy changes to a separate transaction table. The [[programs:odxaim:home|OdxAIM]] tool can then run in the background, updating the Omnidex indexes with these transactions. This approach preserves transactional integrity, though there is a short delay between the updates of the database and the indexes. | + | Given these restrictions, most Omnidex applications refresh the data at regular intervals such as daily, weekly, or monthly. Once the data is refreshed, the indexes are rebuilt, producing an indexed version of the new data. This data can then be deployed into production. |
+ | |||
+ | For applications that require online updates, applications can use INSERT, DELETE, and UPDATE statements to update the table. This approach immediately updates both the database and the Omnidex indexes. Alternatively, Omnidex allows Oracle triggers to be installed on a table that copies changes to a separate transaction table. The [[programs:odxaim:home|OdxAIM program]] can generate Oracle triggers for tables with Omnidex indexes. These Oracle triggers log the changes to the data in a separate, intermediate transaction table, and then OdxAIM processes this transaction table in the background to update the Omnidex indexes. This approach preserves transactional integrity, though there is a short delay between the updates of the database and the indexes. | ||