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
운영게시판
최근게시물
PostgreSQL Q&A 9364 게시물 읽기
No. 9364
psql에서 이미 등록되어있는 프로시져의 수정이 가능한가요?
작성자
opnight
작성일
2013-10-25 16:09
조회수
10,720

8.3 버전입니다.

 

기존 등록되어있는 Table의 data 타입을 변경해야 하는데 해당 Table에 트리거가 얽혀 있습니다.

분석 결과 트리거가 불러오는 함수를수정해햐 할 필요성이 있는데 이때 함수를 drop/create 말고 수정할수 있는 방법이 없을까요?

 

alter 문을 사용하면 될거 같은데 자세한 방도를 모르겠습니다.

 

또한, Create 구문에서 문법 오류가 자꾸 발생하여 문의 드립니다.

 

create function user_info() returns void

 

BEGIN                                             

 IF :NEW.TRANS_CL_CD = 'I' THEN                

 BEGIN                                     

 INSERT INTO T_PRM_USER                

 (                                     

 USER_ID,                          

 USER_NAME,                                         

 USER_TYPE,                                                 

 PASSWORD,                         

 UPDATE_TIME                       

 )                                     

 VALUES                                

 (:NEW.USER_ID,                    

 :NEW.USER_NAME,                                 

 :NEW.USER_TYPE,                   ,                       

 :NEW.PASSWORD,                    

 to_char(sysdate,'YYYYMMDDHH24MISS')

 );                                    

 END; 

END;

생략

 

이런식으로 create 문을 작성했는데... 구문오류가 발생하네요. 해당 내용은 \df 에서 source 부분을 긁어 생성하였습니다.

조언 부탁드립니다 ㅠㅠ;

 

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

 create or replace function .... 

으로 재정의합니다. 

 

이때 입출력 매개변수는 바뀌지 않아야 합니다. 

바뀐 다면,  drop, create 로 만들어야합니다. 

김상기(ioseph)님이 2013-10-27 01:08에 작성한 댓글입니다.
이 댓글은 2013-10-27 01:09에 마지막으로 수정되었습니다.

답변 감사드립니다! OR REPLACE로 재정의가 가능하군요..

헌데 한가지 더 궁금한 점이 있습니다.

 

재정의 시 기존 입,출력 매개변수가 바뀌지 않아야 한다 하셨는데, \df로 확인 했을때 해당 소스 코드 외 입출력 변수에 대한 컬럼은 따로 출력되지 않는군요.

 

해당 함수의 입출력 변수를 확인할수 있는 명령어가 있나요?

 

opnight님이 2013-10-31 09:42에 작성한 댓글입니다.
이 댓글은 2013-10-31 09:42에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
9367PLPGSQL EXCEPTION 관련 질문드립니다. 도와주세요 [1]
action1020
2013-10-31
10872
9366커넥션 LIFO 와 FIFO 사용 시 메모리 문제 [2]
유영곤
2013-10-30
10796
9365한글을 substring으로 자를때 사이즈문제.. [1]
이기자
2013-10-28
11231
9364psql에서 이미 등록되어있는 프로시져의 수정이 가능한가요? [2]
opnight
2013-10-25
10720
9363각 DataBase를 해당 Login Roles로만 접근가능하게 할려면? [2]
이기자
2013-10-22
10577
9362엠에스윈도에 postgresql에서 csv 파일 올리기? [1]
전상도
2013-10-15
10949
9360postgresql 300개이상 connection해서 읽고쓰기 어디까지 가능할까요? [1]
pride
2013-10-11
10806
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.026초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다