Committing Databases

[This is preliminary documentation and subject to change.]

Changes made to the installation database are not written to the database until you call MsiDatabaseCommit.

    To ensure changes made in a database are finalized
  1. You can check to see if a table will be written when you call MsiDatabaseCommit by calling MsiDatabaseIsTablePersistent.
  2. Call the MsiDatabaseCommit function to finalize changes to the database.

Changes made in a database are accumulated and are not reflected in the actual database until you call MsiDatabaseCommit. Temporary columns or rows are not committed to the database. When a database is closed, all changes made since the last MsiDatabaseCommit are automatically rolled back.