사용자 삭제 시 소유한 오브젝트를 함께 삭제하는 방법

by f0081 posted Nov 14, 2023


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
centos 8.5
CUBRID Ver.
CUBRID 11.2 (11.2.7.0797-b3dcab9) (64bit release build for Linux) 
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요. 계속 함수관련해서 질문을 올리고 있는데요.

아래 내용 확인 부탁드립니다

 

1.  자사 프로그램을 설치 시, 사용자를 만들고 사용자 정의함수를 생성합니다.

    기존 함수와 사용자가 존재하는 상태에서 재설치를 진행할 경우,  타 dbms의 경우에는 기존 사용자와 함수를 삭제하기 위해

    drop user xxxxx cascade;를 이용하면 함수까지 삭제가 되는데요. 큐브리드에는 사용자와 함께 사용자가 생성한 함수등을 함께 삭제할 수 있는 방법이 없나요?

 

2. 함수 생성 시, create or replace function구문을 사용하는데 함수의 소유자가 dba그룹이 아니어서 replace가 되지 않는 것 같습니다. 

ERROR: Fail to CREATE FUNCTION test_func01[-907] : The owner or a member of DBA group can drop stored procedure.

 

제가 희망하는 건, 사용자에게는 dba그룹권한을 주고 싶지않고, 재설치 시 사용자가 있다면 drop하고 함수도 재생성하고 싶습니다. 

dba로 함수를 생성하면 함수가 dba의 소유가 되어 버려서 곤란하고 함수 생성 시 오라클처럼 앞에 "사용자명. " 붙여보았더니 생성이 안되어 난감한 상황입니다.

 

3. 마지막으로, 필요한 내용을 QA로 검색하다보면 답변에 "게시글 xxx번을 참고하세요"라고 나오는 것들이 있는데 최소한 링크를 걸어주시던지 게시판에서 게시글번호로 검색할 수 있도록 게시판을 수정해야 하지 않을까요? 게시글 하나 찾는데 클릭을 몇번했는지 모르겠습니다. 개선 부탁드려요.

 

확인부탁드립니다.