Simplified Integrity Checking for an Expressive Class of Denial Constraints

Data integrity is crucial for ensuring data correctness and quality and is maintained through integrity constraints that must be continuously checked, especially in data-intensive systems like OLTP. While DBMSs handle very simple cases of constraints (such as primary key and foreign key constraints)...

Full description

Saved in:
Bibliographic Details
Main Author: Davide Martinenghi
Format: Article
Language:English
Published: MDPI AG 2025-02-01
Series:Algorithms
Subjects:
Online Access:https://www.mdpi.com/1999-4893/18/3/123
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1849340748476973056
author Davide Martinenghi
author_facet Davide Martinenghi
author_sort Davide Martinenghi
collection DOAJ
description Data integrity is crucial for ensuring data correctness and quality and is maintained through integrity constraints that must be continuously checked, especially in data-intensive systems like OLTP. While DBMSs handle very simple cases of constraints (such as primary key and foreign key constraints) well, more complex constraints often require ad hoc solutions. Research since the 1980s has focused on automatic and simplified integrity constraint checking, leveraging the assumption that databases are consistent before updates. This paper presents program transformation operators to generate simplified integrity constraints, focusing on complex constraints expressed in denial form. In particular, we target a class of integrity constraints, called extended denials, which are more general than tuple-generating dependencies and equality-generating dependencies. One of the main contributions of this study consists in the automatic treatment of such a general class of constraints, encompassing the all the most useful and common cases of constraints adopted in practice. Another contribution is the applicability of the proposed technique with a “preventive” approach; unlike all other methods for integrity maintenance, we check whether an update will violate the constraints <i>before</i> executing it, so we never have to undo any work, with potentially huge savings in terms of execution overhead. These techniques can be readily applied to standard database practices and can be directly translated into SQL.
format Article
id doaj-art-6b7fa7d249c74f278192ffae2ae901ee
institution Kabale University
issn 1999-4893
language English
publishDate 2025-02-01
publisher MDPI AG
record_format Article
series Algorithms
spelling doaj-art-6b7fa7d249c74f278192ffae2ae901ee2025-08-20T03:43:50ZengMDPI AGAlgorithms1999-48932025-02-0118312310.3390/a18030123Simplified Integrity Checking for an Expressive Class of Denial ConstraintsDavide Martinenghi0Dipartimento di Elettronica, Informazione e Bioingegneria, Politecnico di Milano, Piazza Leonardo 32, 20133 Milan, ItalyData integrity is crucial for ensuring data correctness and quality and is maintained through integrity constraints that must be continuously checked, especially in data-intensive systems like OLTP. While DBMSs handle very simple cases of constraints (such as primary key and foreign key constraints) well, more complex constraints often require ad hoc solutions. Research since the 1980s has focused on automatic and simplified integrity constraint checking, leveraging the assumption that databases are consistent before updates. This paper presents program transformation operators to generate simplified integrity constraints, focusing on complex constraints expressed in denial form. In particular, we target a class of integrity constraints, called extended denials, which are more general than tuple-generating dependencies and equality-generating dependencies. One of the main contributions of this study consists in the automatic treatment of such a general class of constraints, encompassing the all the most useful and common cases of constraints adopted in practice. Another contribution is the applicability of the proposed technique with a “preventive” approach; unlike all other methods for integrity maintenance, we check whether an update will violate the constraints <i>before</i> executing it, so we never have to undo any work, with potentially huge savings in terms of execution overhead. These techniques can be readily applied to standard database practices and can be directly translated into SQL.https://www.mdpi.com/1999-4893/18/3/123integrity constraintssimplificationdenialsdependencies
spellingShingle Davide Martinenghi
Simplified Integrity Checking for an Expressive Class of Denial Constraints
Algorithms
integrity constraints
simplification
denials
dependencies
title Simplified Integrity Checking for an Expressive Class of Denial Constraints
title_full Simplified Integrity Checking for an Expressive Class of Denial Constraints
title_fullStr Simplified Integrity Checking for an Expressive Class of Denial Constraints
title_full_unstemmed Simplified Integrity Checking for an Expressive Class of Denial Constraints
title_short Simplified Integrity Checking for an Expressive Class of Denial Constraints
title_sort simplified integrity checking for an expressive class of denial constraints
topic integrity constraints
simplification
denials
dependencies
url https://www.mdpi.com/1999-4893/18/3/123
work_keys_str_mv AT davidemartinenghi simplifiedintegritycheckingforanexpressiveclassofdenialconstraints