글수 46
CREATE OR REPLACE VIEW "SCOTT"."EMPDEPT" ("ENAME","DNAME") AS
select ename, decode(deptno,
10,'ACCOUNTING',
20,'RESEARCH',
30,'SALES',
40,'OPERATIONS',
'NO Departments') "DNAME"
from emp
/
select * from scott.empdept
/
ALTER TABLE "SCOTT"."EMP"
DROP CONSTRAINT "FK_DEPTNO"
/
CREATE OR REPLACE FUNCTION "SCOTT"."EMP_I" (
f_empno number ,
f_ename varchar2,
f_sal number ,
f_deptno number
)
return number
as
begin
if f_deptno in (10,20,30,40) then
insert into
scott.emp(empno,ename,sal,deptno)
values(f_empno,f_ename,f_sal,f_deptno);
return 1;
else
dbms_output.put_line('삽입오류 입니다.');
return 0;
end if;
end;
/
set serveroutput on
/
declare
ret number(1);
begin
ret := emp_i(888,'NaHyunJae',1000,10);
dbms_output.put_line(ret);
end;
/
-- 1 이 나옴.
declare
ret number(1);
begin
ret := emp_i(188,'NaHyunJae',1000,11);
dbms_output.put_line(ret);
end;
-- 삽입오류 입니다.
-- 0 이 나옴.
select ename, decode(deptno,
10,'ACCOUNTING',
20,'RESEARCH',
30,'SALES',
40,'OPERATIONS',
'NO Departments') "DNAME"
from emp
/
select * from scott.empdept
/
ALTER TABLE "SCOTT"."EMP"
DROP CONSTRAINT "FK_DEPTNO"
/
CREATE OR REPLACE FUNCTION "SCOTT"."EMP_I" (
f_empno number ,
f_ename varchar2,
f_sal number ,
f_deptno number
)
return number
as
begin
if f_deptno in (10,20,30,40) then
insert into
scott.emp(empno,ename,sal,deptno)
values(f_empno,f_ename,f_sal,f_deptno);
return 1;
else
dbms_output.put_line('삽입오류 입니다.');
return 0;
end if;
end;
/
set serveroutput on
/
declare
ret number(1);
begin
ret := emp_i(888,'NaHyunJae',1000,10);
dbms_output.put_line(ret);
end;
/
-- 1 이 나옴.
declare
ret number(1);
begin
ret := emp_i(188,'NaHyunJae',1000,11);
dbms_output.put_line(ret);
end;
-- 삽입오류 입니다.
-- 0 이 나옴.


