End-to-end testing ensures quality delivery and also makes the development process quicker. That is the reason most of the IT companies prefer end-to-...Read More
Data Integrity resembles an umbrella that refers to the accuracy, consistency, and correctness of data stored in a database. Data integrity is not about physical security, fault tolerance, or data preservation (backups). One can also think of data integrity in terms of an old objective as: ‘garbage in, garbage out’. Data integrity is all about keeping the garbage data out. Data integrity refers to the correctness and completeness of data with respect to a database. A user can insert, update or delete the values in a Database and in order to restrict or constraint the user’s data integrity can be enforced. For example, Numeric columns/cells in a table should be restricted to accept alphabetic data.
Database Integrity is a central underlying aspect or term in the implementation of database technology. Having faith in the data correctness is a prerequisite for using the data in business, research or decision-making applications. So it’s for sure that the factors of ensuring database security and reliability cannot be ignored. One also has to consider the use of error checking and correction codes to deal with integrity issues and improve the performance of database systems.
For example, the integrity of data in the EMP01 and EMP02 databases requires that the book title in the titles table should have a publisher in the publisher table. If one selects insert books which with a valid publisher into tables it will for sure violate the data integrity of EMP01 and EMP02 databases.
Basically, there are four primary types of data integrity: entity, domain, referential and user-defined.
Entity integrity applies at the row level; domain integrity applies at the column level, and referential integrity applies at the table level.
1. Entity Integrity ensures a table does not have any duplicate rows and is uniquely identified.
2. Domain Integrity requires that a set of data values fall within a specific range (domain) in order to be valid. In other words, domain integrity defines the permissible entries for a given column by restricting the data type, format, or range of possible values.
3. Referential Integrity is concerned with keeping the relationships between tables synchronized.
4. User-defined Integrity refers to specific business rules not covered by the other integrity categories. It is typically implemented through triggers and stored procedures. Data integrity is enforced by features such as check constraints, triggers, views, stored procedures, user-defined functions, and/or referential constraints.
Some of the advantages of enforcing integrity constraints are:
1. Enforcing business rules in the code of a database application.
2. Stored procedures can be used with ease in order to completely control access of data.
3. The Enforcement of business rules can be done easily with triggered stored database procedures.
Maintaining the Integrity of the data is a cornerstone function of the DBMS. Integrity constraints that the DBMS maintains are the business rules that are defined by the enterprise. The DBMS should have the capability to enforce data integrity for all the applications that use the data.
Data integrity rules defined centrally in the database is independent of the applications that use the database. When data integrity is implemented directly in the database, the application developer does not need to worry about coding of all the data integrity features directly into the application. Potential problems associated with coding data integrity into the application are:
We, at BugRaptors, during the testing of Data integrity enforcement make sure that Data integrity is enforced by features such as check constraints, triggers, views, stored procedures, user-defined functions, and/or referential constraints. We also perform data integrity testing by keeping in mind all the positive and negative scenarios in order to cover all the business requirement rules.