The Database Design Resource Center

Constraints Defined | Naming Standard | Enabling/Disabling Constraints
Unique constraints | Foreign Key Constraints | Deferred Integrity Constraints
Indexing Constraints | View Constraints | Disabling Constraints | User Defined Types

Oracle Database Constraints : Formal Predicates

This section of the website talks about Oracle database constraints.

Why Oracle?

To my knowledge, Oracle is the database vendor that has the best support for declarative constraints.

What do I mean by declarative? That constraints are defined in DDL (Data Definition Language): This means that you do not have to code them in your application.

Oops: Let's talk a little about that: Where should constraints be defined: In the database, or in your application?

In my view, there is no discussion about where to handle database constraints: In the database, not in the application. Why?

Applications come and go, but your database will be used by several applications. If you include constraints in your application, you will have to copy that code into new applications as well.

You're easily able to see the consequences: Code must be maintained in several places, it will (most likely) perform poorer than if in the database, and most importantly: What if you forget to include a constraint in your new application?

But, Oracle database constraints, while giving you some possibilities for declarative constraints, still is not good enough.

This series of articles explain the possibilities, but also the restrictions you will meet when using Oracle database constraints.

After you have gone through the articles, at the bottom of this page, we will look into a few possible solutions for including constraints in other ways than the (limited) possibilities that Oracle is giving you.

Return to Database Design home

Exclusive interviews with:
Steven Feuerstein, PLSQL expert
Donald Burleson, Top IT consultant

Free eBook

Subscribe to my newsletter and get my ebook on Entity Relationship Modeling Principles as a free gift:

What visitors say...

"I just stumbled accross your site looking for some normalization theory and I have to say it is fantastic.

I have been in the database field for 10+ years and I have never before come across such a useful site. Thank you for taking the time to put this site together."

Mike, USA

Read more Testimonials

Database Normalization eBook:

Database Normalization eBook

Copyright © /
All rights reserved.
All information contained on this website is for informational purposes only.
Disclaimer: does not warrant any company, product, service or any content contained herein.

Return to top

Copyright acknowledgement note:

The name Oracle is a trademark of Oracle Corporation.
The names MS Access/MS SQL Server are trademarks of Microsoft Corporation.
Any other names used on this website may be trademarks of their respective owners, which I fully respect.