Database Row Update Conflict Resolution via Preliminary Modification Checks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In database management systems, when multiple users attempt to update the same data simultaneously, the system faces challenges in minimizing rollback and re-modification tasks, leading to increased costs and inefficiencies.
Innovation Solution
A method and apparatus for updating data in a database management system that involves determining if a target row has already been modified, reselecting modification targets as needed, and omitting, performing, or rolling back modification tasks based on the type of instruction statement in the modification query.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the database server performs a modification task for a specific row according to a request of a first user device, then consistent modification task is guaranteed for the corresponding row, but the remaining user devices cannot conduct modification or reading task for the specific row until completing the modification task
Solution Approach 1:
The patent applies preliminary action by checking whether target rows have already been modified by other users before performing modification tasks. The database server identifies already-modified rows in advance and excludes them from the current modification task, preventing unnecessary rollback and re-modification operations. This allows multiple users to update different portions of the same table simultaneously without blocking each other, thus improving productivity while maintaining data consistency for the rows that are actually being modified.
2Manufacturing precision
If the database server rolls back the modification task performed by the first user and conducts the modification task again for the second user device, then the correct data can be updated, but the cost of rolling back and performing modification task again increases
Solution Approach 1:
The patent performs preliminary checking of modification targets before executing modification tasks. By identifying which rows have already been modified by other users in advance, the system can adjust the modification task to only affect unmodified rows. This eliminates the need for rollback and re-modification operations, thereby reducing time loss while ensuring that the correct data is updated with high accuracy.
Solution Approach 2:
The patent dynamically changes the parameters of the modification task based on the current state of the database. When target rows are found to be already modified, the system adjusts the modification query to exclude those rows or modifies the update logic accordingly. This parameter adaptation allows the system to maintain update accuracy without incurring the overhead of rollback and re-execution.
3Adaptability or versatility
If multiple users simultaneously access the database to update specific rows, then data update service is provided, but the problem of rollback and re-modification tasks occurs
Solution Approach 1:
The patent implements preliminary identification of modification targets and their current modification status before executing multi-user update operations. By checking which rows have already been modified and adjusting the modification task accordingly, the system reduces the need for rollback and re-modification. This approach maintains multi-user support capability while simplifying task management complexity by avoiding unnecessary task re-execution.
Data Source
AI summary
Disclosed are methods for updating data for multiple users in a database management system performed by a computing device, comprising: determining whether there is an already modified target row during a modification task for at least one target row; generating at least one reselected target row by reselecting a modification target in the at least one target row when there is the already modified target row; determining whether there is an already modified reselected target row during a modification task for the at least one reselected target row; and omitting the modification task for the at least one reselected target row, performing the modification task for the at least one reselected target row, or performing a rollback for the modification task for the at least one reselected target row according to the type of instruction statement included in the modification query when there is the already modified reselected target row.


