What is the Difference between Procedure and Function.Can we
call a Function in a DML?
Answers were Sorted based on User's Feedback
Answer / sharad kumar
1. Function must return a value like any other Programing
Language.
2.yes we can call function from a DML.Remember count(*),sum
etc...
Is This Answer Correct ? | 13 Yes | 4 No |
Answer / 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 |
Why do we use procedures in sql?
Can we use update in sql function?
What are the query optimization techniques?
Why cannot I use bind variables in ddl/scl statements in dynamic sql?
How many sql commands are there?
What does joining a thread mean?
Why is sql better than hql?
Why is pl sql needed?
What can sql server reporting services do?
select 10 from dual; y its showing all the rows with 10?
How do I run a sql script?
Can we perform dml on view?