What is the Difference between Procedure and Function.Can we
call a Function in a DML?
Answer Posted / ankush
Function always return a value. procedure may or may be not.
IN a select statement function may be called but we should
execute the procedure.
We can call a stored function from dml statement.
Here is simple example
CREATE OR REPLACE FUNCTION TEST_1 RETURN NUMBER IS
BEGIN
RETURN(10);
END;
SELECT TEST_1 FROM DUAL;
update emp
set sal = sal+ sal*test_1();
To be called from an sql statement a function should follow
the following purity rules.
1) When called from a SELECT statement , the function
should not modify database objects.
2) When called from INSERT , UPDATE, DELETE statements ,
the function can not query or modify the tables that was
modified by the statement.
3)When called from SELECT , DELETE, UPDATE, INSERT
Statements , a function should not contain TCL, DDL
commands.
| Is This Answer Correct ? | 3 Yes | 0 No |
Post New Answer View All Answers
Explain unique key in sql.
Do prepared statements prevent sql injection?
Why is sql*loader direct path so fast?
What is minus?
What is on delete set null?
What does (*) mean in sql?
What is the purpose of my sql?
what does myisamchk do? : Sql dba
Can we write ddl statements in functions?
What is the difference between a query and a report?
why does the selected column have to be in the group by clause or part of an aggregate function? : Sql dba
What is primary key secondary key alternate key candidate key?
What is the need of a partition key?
Which join is like an inner join?
Is sql developer case sensitive?