일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 주식 청약
- 공모주
- Eclipse
- 자바
- 맥
- 제이쿼리
- html
- php
- Stock
- JavaScript
- java
- 코드이그나이터
- 공모주 청약 일정
- css
- IPO
- 주식
- jquery
- SQL
- 리눅스
- 오라클
- 6월 공모주 청약 일정
- MYSQL
- Oracle
- codeigniter
- Stock ipo
- 주식 청약 일정
- 자바스크립트
- linux
- 7월 공모주 청약 일정
- 공모주 청약
- Today
- Total
개발자의 끄적끄적
[oracle]오라클 함수(function) 생성 및 실행[펌] 본문
[oracle]오라클 함수(function) 생성 및 실행[펌]
저번에 프로시저에 대하여 포스팅 하였는데요.
오늘은 같은 부류?의 개념인
함수를 포스팅해보겠습니다.
저번 포스팅에서도 말씀 드렸는데 함수는 반환값이 있고! 프로시저는 반환 값이 없습니다.
그럼 기초적인 함수를 먼저 생성해 보겠습니다.
CREATE OR REPLACE FUNCTION test_func
RETURN VARCHAR
IS
v_test VARCHAR2(100);
BEGIN
v_test := 'testFunction';
RETURN v_test;
END;
진짜 뼈대 밖에 없는 구조 입니다.
test_func가 함수 이름 입니다.
함수 이름 아래 return varchar는 리턴 타입입니다.
함수 실행 결과입니다.
함수 실행문은
select
test_func()
FROM dual;
입니다.
v_test가 반환할 변수를 선언 한것입니다.
그리고 v_test에 문자를 대입시켰습니다. 오라클에서 대입하는 방식은 '='가 아니고 ':=' 라는 사실도 알아두시면 좋을 것 같습니다.
그럼 본격적으로 함수를 만들어 보겠습니다.
create or replace function fun_getdname(v_deptno varchar)
return varchar
is
v_dname varchar(100);
begin
select
dname into v_dname
from dept
where deptno=v_deptno;
return v_dname;
exception
when others then
dbms_output.put_line('exception occurred! (' || sqlcode || ') : ' || sqlerrm);
return '';
end;
dept 테이블에 서 dname을 select해서 결과를 출력하는 함수입니다.
먼저 현재 db의 상태입니다.
select
FUN_GETDNAME(50)
FROM dual;
를 실행시켜서 결과를 확인해 보겠습니다.
dept가 50인 dname을 select 해왔습니다.
그럼 이만 포스팅을 마치겠습니다.
출처: https://lee-mandu.tistory.com/59 [개발/일상_Mr.lee]
'개발 > sql' 카테고리의 다른 글
[Oracle] 테이블 & 컬럼 Comment 추가,확인,삭제 방법 (0) | 2020.08.08 |
---|---|
[Oracle] 오라클 테이블 스페이스 사용법(조회, 생성, 삭제)등 총정리 (0) | 2020.08.07 |
[MySQL] AutoCommit 설정 (0) | 2020.08.03 |
[OracleDB] DB Open 시 발생되는 ORA-03113 에 대한 조치방법 [펌] (0) | 2020.08.03 |
[oracle]오라클 select해서 insert 하기 [펌] (0) | 2020.08.02 |