database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 40051 게시물 읽기
No. 40051
REPLACE 도움 요청...
작성자
김동길(sw1893)
작성일
2013-03-15 18:19ⓒ
2013-03-19 10:42ⓜ
조회수
5,366

 

REPLACE 할려고 FUNCTION 을 하나 만들었습니다~근데 결과값이 NULL로 나오네요...

입력받는 변수값이 메모같은거라....특정 코드값이 들어있는것만 바꿔야 하거든요..

직장:051-634-xxxx  24566324

785203146     직장:031-722-xxxx

이런식으로 되어있거든요...

W_JONG 이테이블에는 ASISCD , TOBECD 밖에 없거든요...

도움좀 주세요...ㅠ


CREATE OR REPLACE FUNCTION FN_MIG_W_JONG(iColNM IN VARCHAR2 DEFAULT NULL)
  RETURN VARCHAR2
  IS

v_sq VARCHAR2(1000);
  BEGIN
    SELECT REPLACE(iColNM,ASISCD,TOBECD) AS tobe INTO v_sq FROM W_JONG
    RETURN v_sq;

EXCEPTION
 WHEN NO_DATA_FOUND THEN
 RETURN iColNM;

  WHEN OTHERS THEN
      RETURN v_sq;
  END;

이 글에 대한 댓글이 총 2건 있습니다.

오류 발생으로 인해 When Others 구문으로 빠지면 Null 이 리턴되겠네요.

제 생각엔 Select Into 절에서 Too Many Rows 에러가 났을 것 같네요.

마농(manon94)님이 2013-03-18 14:28에 작성한 댓글입니다.

마농님 말씀처럼 error 가 나서 null값을 찍는게 맞네요...

이걸 어찌 해결을 해야 할지......where 절을 줄수도 없고....

 

김동길(sw1893)님이 2013-03-19 10:43에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40055이런식의 값을...가져올수 있을까요. [1]
새하정
2013-03-18
5417
40054테이블스페이스를 삭제한상태에서 데이타파일삭제
DBA희망자
2013-03-18
5030
40053쉬운것같으면서도 2일째 안풀리는 한문제...ㅠ [1]
힝 ㅠ
2013-03-16
6197
40051REPLACE 도움 요청... [2]
김동길
2013-03-15
5366
40050CONNECT BY PRIOR [1]
새하정
2013-03-15
6055
40049데이터 삭제 이력 확인 방법, 복구방법 있나요? [1]
김범재
2013-03-14
5822
40048Commit 만 사용시... [1]
아폴론
2013-03-14
6103
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다