What are the differences between Database Trigger and
Integrity constraints ?
Answers were Sorted based on User's Feedback
Answer / guest
An integrity constraint defines a business rule for a table
column which automatically takes care by Oracle internally.
Intefrity Constraints are NOT NULL,UNIQUE,CHECK ,PRIMARY
KEY,FOREIGN KEY.
A database trigger is a procedure written in PL/SQL and
Will run implicitly when data is modified or when some user
or system actions occur.Triggers are database objects which
gets stored in database and get fires when INSERT or UPDATE
statement attempts to violate the integrity rule, Oracle
must roll back the statement and return an error if trigger
exists.Database triggers are BEFOR/AFTER/{BEFORE|AFTER}
{row|statement etc.
Is This Answer Correct ? | 11 Yes | 3 No |
Answer / rao
main diff is when we use the trigger voilation rules of
trigger body will not affect existing data.but in case of
constrinat will affect the exsting data also.
Is This Answer Correct ? | 7 Yes | 1 No |
Answer / kalyana chakravarthy
Intigrity constraints are Proactive-- Like they take the
cols into consideration before sitting on it like if U levy
a PK on a col having duplicate or null values it will not
obey to sit on that col
Triggers are reactive-- Triggres react only when a DML
occurs. When it comes and sit on a table then its starts
working and never considers what happened before it arrival
Both are used to perform business rules
Is This Answer Correct ? | 4 Yes | 0 No |
Answer / santu sarkar
1> A database trigger is written in PL/SQL. Integrity Constraints are CHECK Constraints, Not NULL, Unique key, primary key and foreign key.
2> Trigger will not affect the existing data. Constraint will affect the existing data.
Is This Answer Correct ? | 4 Yes | 1 No |
Where do we use pl sql?
Why do we use sql constraints? Which constraints we can use while creating database in sql?
There is a sequence with min value 100. I want to alter this sequence to min value as 101. If the table has already data in the sequence column as 100,101,102... Is it possible to do so ?
what are the differences among these table level lock modes - IN SHARE MODE, IN SHARE UPDATE MODE, IN EXCLUSIVE MODE ?
Given two tables Student(SID, Name, Course) and Level(SID, level) write the SQL statement to get the name and SID of the student who are taking course = 3 and at freshman level.
What is pl sql code?
what is ref cursor in pl/sql?
What is intersect?
What is equi join in sql?
Is there a way to automate sql execution from the command-line, batch job or shell script?
Explain clause in sql?
What is the difference between sql, mysql and sql server?