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
What is the main difference between sql and pl/sql?
Define union, minus, union all, intersect ?
What kind of join is join?
how to shut down the server with 'mysqladmin'? : Sql dba
What is case function?
Enlist the data types that can be used in pl/sql?
What is the purpose of cursors in pl/sql?
Can we use pl sql in mysql?
Inline the values in PL/SQL, what does it mean.?
How can I tell if sql is running?
how to use 'mysql' to run sql statements? : Sql dba
Why truncate is used in sql?
What is a schema sql?
Can you select everything, but 1 or 2 fields, without writer's cramp?
What is the maximum number of rows in sql table?