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
운영게시판
최근게시물
CUBRID Q&A 1059 게시물 읽기
No. 1059
Q.oid.remove() 메소드 관련 질문...
작성자
ajdcnddl
작성일
2008-04-22 15:48
조회수
6,630

더운 날씨에 고생이 많으십니다.

 

질문의 내용은

 

A라는 테이블이 B라는 테이블의 OID를 필드 값으로 가지는데요...(Sequence)

 

B라는 테이블에 키 값이 없어서 B라는 테이블의 로우를 삭제 할 경우에 OID값으로 삭제를 합니다. (oid.remove())

 

삭제 자체는 잘 되는데...

 

문제는 삭제된 B테이블 로우의 OID 가

 

A테이블의 필드로 계속 남아 있다는 건데요...

 

{1111,1,1} {2222,2,2} {3333,3,3} 요렇게 세개의 OID를 값으로 가졌다고 치면...

 

{3333,3,3}를 OID로 가지는 로우를 oid.remove() 로 지웠을 경우 위 필드의 값에서도 삭제하는 방법이 없나 해서 질문 드립니다.

 

설명이 어렵진 않은지 모르겠네요...

 

그럼 고생 많으신데... 일거리 드려서 죄송하구...

 

좋은 하루 되세요~ 꾸벅;;

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

>더운 날씨에 고생이 많으십니다.

>

>질문의 내용은

>

>A라는 테이블이 B라는 테이블의 OID를 필드 값으로 가지는데요...(Sequence)

>

>B라는 테이블에 키 값이 없어서 B라는 테이블의 로우를 삭제 할 경우에 OID값으로 삭제를 합니다. (oid.remove())

>

>삭제 자체는 잘 되는데...

>

>문제는 삭제된 B테이블 로우의 OID 가

>

>A테이블의 필드로 계속 남아 있다는 건데요...

>

>{@1111|1|1} {@2222|2|2} {@3333|3|3} 요렇게 세개의 OID를 값으로 가졌다고 치면...

>

>{@3333|3|3}를 OID로 가지는 로우를 oid.remove() 로 지웠을 경우 위 필드의 값에서도 삭제하는 방법이 없나 해서 질문 드립니다.

>

>설명이 어렵진 않은지 모르겠네요...

>

>그럼 고생 많으신데... 일거리 드려서 죄송하구...

>

>좋은 하루 되세요~ 꾸벅;;

 

죄송하지만..!!

정확한 답변을 위해 말씀하신 내용의 스키마 정보를 올려 주시면 테스트 후 답변 드리도록 하겠습니다

 

정만영님이 2008-04-22 17:13에 작성한 댓글입니다. Edit

안녕하세요.

일반 필드에 대하여 OID 로 연결되어있는 경우 그 값은 NULL 로 변경이 됩니다. 다만 set 형태로 연결된 경우 그 값이 자동으로 NULL 로 변경이 되지 않고 있읍니다. 따라서 제거후에 원 set 필드에 대하여 해당 oid 를 제거하여 주셔야 합니다.

update A set fld = fld - @3333|3|3 where ... 와 같이 처리하시거나, set 필드 정보를 client 에서 가지고 있다면 set 필드 값 자체에서 @3333|3|3 을 빼낸후 A 테이블의 해당 필드를 업데이트 하시면 됩니다.

사용에 불편을 드려 죄송합니다.

 

>더운 날씨에 고생이 많으십니다.

>

>질문의 내용은

>

>A라는 테이블이 B라는 테이블의 OID를 필드 값으로 가지는데요...(Sequence)

>

>B라는 테이블에 키 값이 없어서 B라는 테이블의 로우를 삭제 할 경우에 OID값으로 삭제를 합니다. (oid.remove())

>

>삭제 자체는 잘 되는데...

>

>문제는 삭제된 B테이블 로우의 OID 가

>

>A테이블의 필드로 계속 남아 있다는 건데요...

>

>{@1111|1|1} {@2222|2|2} {@3333|3|3} 요렇게 세개의 OID를 값으로 가졌다고 치면...

>

>{@3333|3|3}를 OID로 가지는 로우를 oid.remove() 로 지웠을 경우 위 필드의 값에서도 삭제하는 방법이 없나 해서 질문 드립니다.

>

>설명이 어렵진 않은지 모르겠네요...

>

>그럼 고생 많으신데... 일거리 드려서 죄송하구...

>

>좋은 하루 되세요~ 꾸벅;;

 

남재우님이 2008-04-22 17:18에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1062Q.... 이번엔 다른실행문제 [1]
김정현
2008-04-24
6491
1061Q.멤보와 그룹 문의 [2]
박수환
2008-04-24
7317
1060Q.삭재하기 [1]
김정현
2008-04-22
6971
1059Q.oid.remove() 메소드 관련 질문... [2]
ajdcnddl
2008-04-22
6630
1058Q.수퍼클래스와 클래스속성이 뭔가요? [1]
궁금이
2008-04-22
6349
1057Q.사소한.. 건의 사항입니다만... ^^; [1]
묵검추
2008-04-21
6430
1056Q.jdbc 에서 nchar varying 은 어떻게 처리해야 하나요..? [2]
묵검추
2008-04-21
6712
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2019 DSN, All rights reserved.
작업시간: 0.071초, 이곳 서비스는
	PostgreSQL v11.5로 자료를 관리합니다