Applied Mathematics for Database Professionals

Lex de Haan, Toon Koppelaars (2007) Applied Mathematics for Database Professionals. Apress.

[img] Text
Restricted to Repository staff only

Download (2MB)


This section provides a summary of this chapter, formatted as a bulleted list. • You usually implement a database design in order to build a business application on top of it. These applications normally are window-on-data (WoD) applications. Users query and transact data by using these applications. • All code of a WoD application can be classified into three classes: user interface code (UI code), business logic code (BL code), and data integrity code (DI code). UI code creates the user interface that the user sees, and it responds to events initiated by the user in the user interface. DI code is responsible for the continued validity of all data integrity constraints as users change data in the database. BL code is responsible for composing and executing queries and transactions. • This chapter’s main focus has been how to implement DI code in an efficient manner. • You can implement DI code using one of the following three strategies: declarative, triggered procedural, or embedded procedural. • You can state all attribute and tuple constraints declaratively. You can state only a few table and database constraints declaratively. • The majority of (multi-row) data integrity constraints must be implemented procedurally. In this chapter, the triggered procedural strategy is preferred over the embedded procedural strategy. • We introduced you to six execution models for implementing DI code for multi-tuple constraints. These range from rather inefficient (every constraint is fully checked for every DML statement), to rather efficient (a constraint is conditionally checked in a minimal way). • Given Oracle’s standard read-committed isolation level, you must programmatically serialize DI code. Failure to do so can result in constraint violations when transactions execute concurrently. Serializing DI code of transition constraints is particularly difficult. • Certain constraints cannot be validated at the statement level; they require a deferred execution model of the DI code. Extending the execution models to cater for deferred execution of DI code is not easy. You’ve seen an outline of how this could be done, which involved setting up a central table where temporary violations are logged. • If you have many data integrity constraints that require a triggered procedural implementation, then the RuleGen framework can help you manage all DI code for these constraints.

Item Type: Book
Subjects: T Technology > T Technology (General)
Divisions: Ebook
Depositing User: Editor FT
Date Deposited: 14 Feb 2015 03:07
Last Modified: 14 Feb 2015 03:07

Actions (login required)

View Item View Item