SlideShare a Scribd company logo
1 of 17
Maintaining Data Integrity
Objectives
After completing this lesson, you should be able to
do the following:
• Implement data integrity constraints
• Maintain integrity constraints
• Obtain constraint information from the data
dictionary
Data Integrity
3
Application
code
Integrity
constraint
Database
trigger
Table
Data
Types of Constraints
Constraint
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY
CHECK
Description
Specifies that a column cannot contain null
values
Designates a column or combination of
columns as unique
Designates a column or combination of
columns as the table’s primary key
Designates a column or combination of
columns as the foreign key in a referential
integrity constraint
Specifies a condition that each row of the
table must satisfy
Constraint States
Enabled
novalidate
Enabled
validate
Existing dataNew data
Disabled
novalidate
Disabled
validate
=
=
Deferred Constraints
DML statement
Check nondeferred
constraints
COMMIT
Check deferred
constraints
Defining Constraints as
Immediate or Deferred
Use the command ALTER SESSION or SET
CONSTRAINTS to set the mode for your constraint.
ALTER SESSION
SET CONSTRAINT[S] =
{IMMEDIATE|DEFERRED|DEFAULT};
Primary and Unique Key Enforcement
Is an index
available
for use?
Yes
No
No
Yes
Yes
No
Create nonunique
index
Create unique
index
Do not use
index
Use existing
index
Key enabled?
Constraint
deferrable?
Foreign Key Considerations
Desired Action
Drop parent table
Truncate parent table
Drop tablespace
containing parent table
Avoid locks on child
table while performing
DML on parent table
Perform DML on child
table
Appropiate Solution
Cascade constraints
Disable or drop foreign key
Use CASCADE CONSTRAINTS
clause
Create index on foreign key
Ensure tablespace containing
parent key index online
Defining Constraints While
Creating a Table
CREATE TABLE summit.employee(
id NUMBER(7)
CONSTRAINT employee_id_pk PRIMARY KEY
DEFERRABLE
USING INDEX
STORAGE(INITIAL 100K NEXT 100K)
TABLESPACE indx,
last_name VARCHAR2(25)
CONSTRAINT employee_last_name_nn NOT NULL,
dept_id NUMBER(7))
TABLESPACE data;
Guidelines for
Defining Constraints
• Primary and unique constraints:
– Place indexes in a separate tablespace
– Use nonunique indexes if bulk loads are
frequent
• Self-referencing foreign keys:
– Define or enable foreign keys after initial load
– Defer constraint checking
Enabling Constraints
• No locks on table
• Primary and unique keys
must use nonunique indexes
Enable
NOVALIDATE
ALTER TABLE summit.department
ENABLE NOVALIDATE CONSTRAINT dept_pk;
Enabling Constraints
• Locks table
• Can use unique or nonunique
indexes
• Needs valid table data
Enable
VALIDATE
ALTER TABLE summit.employee
ENABLE VALIDATE CONSTRAINT emp_dept_fk;
Using the EXCEPTIONS Table
1. Create EXCEPTIONS table (utlexcpt.sql).
2. Execute ALTER TABLE with EXCEPTIONS clause.
3. Use subquery on EXCEPTIONS to locate rows
with invalid data.
4. Rectify the errors.
5. Reexecute ALTER TABLE to enable the
constraint.
Dropping Constraints
• Drop constraints using this command:
• Drop a table and any referencing foreign key using
this command:
ALTER TABLE summit.employee
DROP CONSTRAINT emp_ln_uk;
DROP TABLE department
CASCADE CONSTRAINTS;
Getting Constraint Information
DBA_CONSTRAINTS
OWNER
CONSTRAINT_NAME
CONSTRAINT_TYPE
TABLE_NAME
SEARCH_CONDITION
R_OWNER
R_CONSTRAINT_NAME
DELETE_RULE
STATUS
DEFERRABLE
DEFERRED
VALIDATED
GENERATED
BAD
RELY
LAST_CHANGE
DBA_CONS_COLUMNS
OWNER
CONSTRAINT_NAME
TABLE_NAME
COLUMN_NAME
POSITION
Summary
In this lesson, you should have learned how to:
• Implement data integrity
• Use an appropriate strategy for creating and
maintaining constraints
• Obtain information from the data dictionary

More Related Content

What's hot

integrity constraints
integrity constraintsintegrity constraints
integrity constraintsmadhav bansal
 
Database constraints
Database constraintsDatabase constraints
Database constraintsHarry Potter
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity ConstraintsMegha yadav
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraintsmadhav bansal
 
Starburst by Umar danjuma maiwada presentation
Starburst by Umar danjuma maiwada presentationStarburst by Umar danjuma maiwada presentation
Starburst by Umar danjuma maiwada presentationumardanjumamaiwada
 
Oracle Database DML DDL and TCL
Oracle Database DML DDL and TCL Oracle Database DML DDL and TCL
Oracle Database DML DDL and TCL Abdul Rehman
 
Data Manipulation Language
Data Manipulation LanguageData Manipulation Language
Data Manipulation LanguageJas Singh Bhasin
 
Constraints In Sql
Constraints In SqlConstraints In Sql
Constraints In SqlAnurag
 
Integrity constraints in dbms
Integrity constraints in dbmsIntegrity constraints in dbms
Integrity constraints in dbmsVignesh Saravanan
 
SQL Tutorial - How To Create, Drop, and Truncate Table
SQL Tutorial - How To Create, Drop, and Truncate TableSQL Tutorial - How To Create, Drop, and Truncate Table
SQL Tutorial - How To Create, Drop, and Truncate Table1keydata
 
DBMS Integrity rule
DBMS Integrity ruleDBMS Integrity rule
DBMS Integrity ruleGirdharRatne
 
Sql server ___________session_16(views)
Sql server  ___________session_16(views)Sql server  ___________session_16(views)
Sql server ___________session_16(views)Ehtisham Ali
 
MYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingMYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingAhmed Farag
 
Sql basic things
Sql basic thingsSql basic things
Sql basic thingsNishil Jain
 

What's hot (18)

integrity constraints
integrity constraintsintegrity constraints
integrity constraints
 
Database constraints
Database constraintsDatabase constraints
Database constraints
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
 
Starburst by Umar danjuma maiwada presentation
Starburst by Umar danjuma maiwada presentationStarburst by Umar danjuma maiwada presentation
Starburst by Umar danjuma maiwada presentation
 
Sql DML
Sql DMLSql DML
Sql DML
 
Oracle Database DML DDL and TCL
Oracle Database DML DDL and TCL Oracle Database DML DDL and TCL
Oracle Database DML DDL and TCL
 
Data Manipulation Language
Data Manipulation LanguageData Manipulation Language
Data Manipulation Language
 
Constraints In Sql
Constraints In SqlConstraints In Sql
Constraints In Sql
 
Integrity constraints in dbms
Integrity constraints in dbmsIntegrity constraints in dbms
Integrity constraints in dbms
 
SQL Tutorial - How To Create, Drop, and Truncate Table
SQL Tutorial - How To Create, Drop, and Truncate TableSQL Tutorial - How To Create, Drop, and Truncate Table
SQL Tutorial - How To Create, Drop, and Truncate Table
 
DBMS Integrity rule
DBMS Integrity ruleDBMS Integrity rule
DBMS Integrity rule
 
Sql server ___________session_16(views)
Sql server  ___________session_16(views)Sql server  ___________session_16(views)
Sql server ___________session_16(views)
 
MYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingMYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-having
 
MySQL Views
MySQL ViewsMySQL Views
MySQL Views
 
Commands of DML in SQL
Commands of DML in SQLCommands of DML in SQL
Commands of DML in SQL
 
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with ExamplesDML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
 
Sql basic things
Sql basic thingsSql basic things
Sql basic things
 

Viewers also liked

Keek for the internet
Keek for the internetKeek for the internet
Keek for the internetpeter963
 
Keek for i pad
Keek for i padKeek for i pad
Keek for i padpeter963
 
Qasaed - Chahardah (14) Masoomeen a.s.
Qasaed - Chahardah (14) Masoomeen a.s. Qasaed - Chahardah (14) Masoomeen a.s.
Qasaed - Chahardah (14) Masoomeen a.s. Jamal Mirza
 
Keek get free followers
Keek get free followersKeek get free followers
Keek get free followerspeter963
 
9 Psychological Triggers That Convert Your SaaS Visitors Into Customers
9 Psychological Triggers That Convert Your SaaS Visitors Into Customers9 Psychological Triggers That Convert Your SaaS Visitors Into Customers
9 Psychological Triggers That Convert Your SaaS Visitors Into CustomersDavid Cacik
 
Las graficas en excel
Las graficas en excelLas graficas en excel
Las graficas en excelellamontesp
 
Lmaribo phrasal verb
Lmaribo phrasal verbLmaribo phrasal verb
Lmaribo phrasal verbarizabotialuz
 
Adjectives adverbs
Adjectives adverbsAdjectives adverbs
Adjectives adverbsMess Lod
 
Website Series 0 - Website Development Environment
Website Series 0 - Website Development EnvironmentWebsite Series 0 - Website Development Environment
Website Series 0 - Website Development EnvironmentEugene Yang
 
Comercializacion del turismo comunitario ernest cañada fitur 2016
Comercializacion del turismo comunitario ernest cañada fitur 2016Comercializacion del turismo comunitario ernest cañada fitur 2016
Comercializacion del turismo comunitario ernest cañada fitur 2016Chus Blázquez
 

Viewers also liked (14)

Keek for the internet
Keek for the internetKeek for the internet
Keek for the internet
 
Keek for i pad
Keek for i padKeek for i pad
Keek for i pad
 
Qasaed - Chahardah (14) Masoomeen a.s.
Qasaed - Chahardah (14) Masoomeen a.s. Qasaed - Chahardah (14) Masoomeen a.s.
Qasaed - Chahardah (14) Masoomeen a.s.
 
Laura
LauraLaura
Laura
 
We are Hiring!
We are Hiring!We are Hiring!
We are Hiring!
 
Keek get free followers
Keek get free followersKeek get free followers
Keek get free followers
 
9 Psychological Triggers That Convert Your SaaS Visitors Into Customers
9 Psychological Triggers That Convert Your SaaS Visitors Into Customers9 Psychological Triggers That Convert Your SaaS Visitors Into Customers
9 Psychological Triggers That Convert Your SaaS Visitors Into Customers
 
Las graficas en excel
Las graficas en excelLas graficas en excel
Las graficas en excel
 
Lmaribo phrasal verb
Lmaribo phrasal verbLmaribo phrasal verb
Lmaribo phrasal verb
 
Adjectives adverbs
Adjectives adverbsAdjectives adverbs
Adjectives adverbs
 
Website Series 0 - Website Development Environment
Website Series 0 - Website Development EnvironmentWebsite Series 0 - Website Development Environment
Website Series 0 - Website Development Environment
 
Britto worksheet
Britto worksheetBritto worksheet
Britto worksheet
 
Comercializacion del turismo comunitario ernest cañada fitur 2016
Comercializacion del turismo comunitario ernest cañada fitur 2016Comercializacion del turismo comunitario ernest cañada fitur 2016
Comercializacion del turismo comunitario ernest cañada fitur 2016
 
Membrana del eritrocito
Membrana del eritrocitoMembrana del eritrocito
Membrana del eritrocito
 

Similar to Clase 13 integridad modificada

Oracle SQL Fundamentals - Lecture 3
Oracle SQL Fundamentals - Lecture 3Oracle SQL Fundamentals - Lecture 3
Oracle SQL Fundamentals - Lecture 3MuhammadWaheed44
 
Constraints constraints of oracle data base management systems
Constraints  constraints of oracle data base management systemsConstraints  constraints of oracle data base management systems
Constraints constraints of oracle data base management systemsSHAKIR325211
 
SQL WORKSHOP::Lecture 11
SQL WORKSHOP::Lecture 11SQL WORKSHOP::Lecture 11
SQL WORKSHOP::Lecture 11Umair Amjad
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptxSherinRappai1
 
Dms 22319 micro project
Dms 22319 micro projectDms 22319 micro project
Dms 22319 micro projectARVIND SARDAR
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptxSherinRappai
 
database management system lessonchapter
database management system lessonchapterdatabase management system lessonchapter
database management system lessonchapterMohammedNouh7
 
Introduction to structured query language (sql)
Introduction to structured query language (sql)Introduction to structured query language (sql)
Introduction to structured query language (sql)Sabana Maharjan
 
Les11[1]Including Constraints
Les11[1]Including ConstraintsLes11[1]Including Constraints
Les11[1]Including Constraintssiavosh kaviani
 
Database COMPLETE
Database COMPLETEDatabase COMPLETE
Database COMPLETEAbrar ali
 
Java class 8
Java class 8Java class 8
Java class 8Edureka!
 

Similar to Clase 13 integridad modificada (20)

Oracle SQL Fundamentals - Lecture 3
Oracle SQL Fundamentals - Lecture 3Oracle SQL Fundamentals - Lecture 3
Oracle SQL Fundamentals - Lecture 3
 
Sql commands
Sql commandsSql commands
Sql commands
 
Constraints constraints of oracle data base management systems
Constraints  constraints of oracle data base management systemsConstraints  constraints of oracle data base management systems
Constraints constraints of oracle data base management systems
 
SQL WORKSHOP::Lecture 11
SQL WORKSHOP::Lecture 11SQL WORKSHOP::Lecture 11
SQL WORKSHOP::Lecture 11
 
UNIT2.ppt
UNIT2.pptUNIT2.ppt
UNIT2.ppt
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptx
 
IR SQLite Session #3
IR SQLite Session #3IR SQLite Session #3
IR SQLite Session #3
 
Dms 22319 micro project
Dms 22319 micro projectDms 22319 micro project
Dms 22319 micro project
 
Aggregate functions in SQL.pptx
Aggregate functions in SQL.pptxAggregate functions in SQL.pptx
Aggregate functions in SQL.pptx
 
database management system lessonchapter
database management system lessonchapterdatabase management system lessonchapter
database management system lessonchapter
 
SQL
SQLSQL
SQL
 
Introduction to structured query language (sql)
Introduction to structured query language (sql)Introduction to structured query language (sql)
Introduction to structured query language (sql)
 
DBMS LAB M.docx
DBMS LAB M.docxDBMS LAB M.docx
DBMS LAB M.docx
 
Les11[1]Including Constraints
Les11[1]Including ConstraintsLes11[1]Including Constraints
Les11[1]Including Constraints
 
Database COMPLETE
Database COMPLETEDatabase COMPLETE
Database COMPLETE
 
Database.pptx
Database.pptxDatabase.pptx
Database.pptx
 
Bn1037 demo oracle sql
Bn1037 demo  oracle sqlBn1037 demo  oracle sql
Bn1037 demo oracle sql
 
Java class 8
Java class 8Java class 8
Java class 8
 
2..basic queries.pptx
2..basic queries.pptx2..basic queries.pptx
2..basic queries.pptx
 
SQL Inteoduction to SQL manipulating of data
SQL Inteoduction to SQL manipulating of data   SQL Inteoduction to SQL manipulating of data
SQL Inteoduction to SQL manipulating of data
 

More from Titiushko Jazz

Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)
Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)
Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)Titiushko Jazz
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Titiushko Jazz
 
Unidad vii esp parte 2 introduccion a data warehouse y datamining
Unidad vii esp parte 2 introduccion a data warehouse y dataminingUnidad vii esp parte 2 introduccion a data warehouse y datamining
Unidad vii esp parte 2 introduccion a data warehouse y dataminingTitiushko Jazz
 
Unidad vi esp parte 2 procesimientos en plsql y transact sql
Unidad vi esp parte 2 procesimientos en plsql y transact sqlUnidad vi esp parte 2 procesimientos en plsql y transact sql
Unidad vi esp parte 2 procesimientos en plsql y transact sqlTitiushko Jazz
 
Tarea pronosticos eily
Tarea pronosticos eilyTarea pronosticos eily
Tarea pronosticos eilyTitiushko Jazz
 
Proyecto teórico práctico
Proyecto teórico prácticoProyecto teórico práctico
Proyecto teórico prácticoTitiushko Jazz
 

More from Titiushko Jazz (20)

Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)
Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)
Unidad vii esp parte 3 clase de inteligencia de negocios (datawarehouse)
 
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
Unidad vii esp parte 3 clase de datawarehouse ( ing. doño)
 
Unidad vii esp parte 2 introduccion a data warehouse y datamining
Unidad vii esp parte 2 introduccion a data warehouse y dataminingUnidad vii esp parte 2 introduccion a data warehouse y datamining
Unidad vii esp parte 2 introduccion a data warehouse y datamining
 
Unidad vi esp parte 2 procesimientos en plsql y transact sql
Unidad vi esp parte 2 procesimientos en plsql y transact sqlUnidad vi esp parte 2 procesimientos en plsql y transact sql
Unidad vi esp parte 2 procesimientos en plsql y transact sql
 
Unidad ii esp parte 2
Unidad ii esp parte 2Unidad ii esp parte 2
Unidad ii esp parte 2
 
Unidad ii esp parte 1
Unidad ii esp parte 1Unidad ii esp parte 1
Unidad ii esp parte 1
 
Unidad i esp parte 2
Unidad i esp parte 2Unidad i esp parte 2
Unidad i esp parte 2
 
Unidad i esp parte 1
Unidad i esp parte 1Unidad i esp parte 1
Unidad i esp parte 1
 
Tarea pronosticos eily
Tarea pronosticos eilyTarea pronosticos eily
Tarea pronosticos eily
 
Sociedades limitadas
Sociedades limitadasSociedades limitadas
Sociedades limitadas
 
Rhu
RhuRhu
Rhu
 
Qué es un proyecto
Qué es un proyectoQué es un proyecto
Qué es un proyecto
 
Proyecto teórico práctico
Proyecto teórico prácticoProyecto teórico práctico
Proyecto teórico práctico
 
Presentacion1630
Presentacion1630Presentacion1630
Presentacion1630
 
Presentacion1410
Presentacion1410Presentacion1410
Presentacion1410
 
Presentacion1310
Presentacion1310Presentacion1310
Presentacion1310
 
Presentacion1210
Presentacion1210Presentacion1210
Presentacion1210
 
Presentacion1220
Presentacion1220Presentacion1220
Presentacion1220
 
Presentacion1001
Presentacion1001Presentacion1001
Presentacion1001
 
Presentacion810
Presentacion810Presentacion810
Presentacion810
 

Clase 13 integridad modificada

Editor's Notes

  1. Oracle Programmer™ is a comprehensive suite of products which facilitates enterprise application development with the Oracle8™ database. Oracle Programmer with Oracle8 consists of: Three call level interfaces: 1) The Oracle8 Oracle Call Interface (OCI). 2) The Oracle Open Database Connectivity (ODBC) driver. 3) Two Java Database Connectivity (JDBC) drivers. Three embedded, SQL-style interfaces: 1) The Oracle Precompilers (Pro*C™, Pro*COBOL®, and Pro*FORTRAN®). 2) SQL*Module® (for ADA). 3) JSQL™ (embedded SQL in Java). Oracle Objects® for OLE are an easy-to-use OLE/COM interface to access Oracle from Visual Basic and Microsoft Windows applications. The Object Type Translator is a utility that maps Oracle8 object schemas to client-side language variables, such as C header files. The availability of each of these products and the Oracle Programmer bundle itself on various platforms needs to be determined from Oracle.