How Updates Are Saved
QBF stores your modifications and deletions in a temporary buffer. To save the changes permanently, choose the Save operation on the data display form Update frame. As QBF writes your changes to the database, it displays this message:
Saving changes . . .
When the process is complete, QBF displays the following message and returns you to the Update frame query form so that you can specify a new query:
Changes saved.
When you choose the Save operation, QBF attempts to update the database with the current contents of all fields on the form, not just the field or fields that you changed. It also checks the contents of all fields on the Update data display form for data type consistency, integrity violations, and permission violations, and reports any errors.
Update Operation and JoinDef Rules
When you update or delete rows using a JoinDef, be aware of the update and delete rules for that JoinDef. For more information, see Update and Delete Rules in the chapter “Using JoinDefs in QBF.” If you attempt to save invalid changes, QBF does not commit your updates to those tables.
Errors Reported During the Save Process
If you attempt to update rows for which you do not have permission, QBF does not commit your changes.
If you violate an integrity constraint (which guards against data of the wrong data type being entered), QBF displays a message to that effect. If this happens, you can:
• Press End to return to the field with the error and correct it.
• Press More to get more information about the error.
Transaction Deadlock in Update Mode
Deadlocks can occur at two times during the QBF Update function. First, a deadlock can occur while you are editing rows of retrieved data. QBF displays the following error message:
Deadlock detected, your transaction has been aborted.
This means that you cannot update any more rows retrieved by your last query. However, any changes you have made before this point are still stored in the buffer. In this situation, QBF displays the following message:
Do you wish to save the changes made thus far?
Answering y (yes) is equivalent to selecting the Save operation. As QBF writes your changes into the database, it displays the message:
Saving Changes
The second type of deadlock can occur during the Save operation while your changes are being written from the temporary storage buffer to the database. In this case, QBF displays the message:
Deadlock detected, your transaction has been aborted.
In this situation, all changes made since the last Save operation are lost and you must begin again with a clear form.
Last modified date: 04/03/2024