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 1093 게시물 읽기
No. 1093
Q.SET 질의문과 referencing
작성자
김선우
작성일
2008-05-26 20:02
조회수
8,361

다음 두개의 질의문에 잘못된 점이 있는지와 두 질의문의 결과가 어떻게 다른지 궁금합니다.

그리고 Organization, Person, PersonAndOrganization이 모두 entity일 때 어떻게 referencing할 수 있는지 알고 싶습니다.

 

CREAT CLASS ActorSelect (

        SET(Organization, Person, PersonAndOrganization));

 

CREAT CLASS ActorSelect (select * from

        SET(Organization, Person, PersonAndOrganization));

 

감사합니다.

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

첫 번째 질의에서는 attribute name이 빠져 있네요.

두 번째 질의와 같은 create .... select 구문은 큐브리드에서는 지원하지 않습니다.

 

첫 번째 질의와 같이 사용자 클래스를 원소로 하는 set 데이터 타입에 저장되는 데이터는 해당 클래스의 OID가 저장되어야 합니다.

OID는 인스턴스의 객체 식별자로 해당 시스템에 유일한 값입니다.

OID를 알아내는 방법은

1. insert 구문 실행결과로 OID가 리턴됩니다.

2. 이미 생성된 인스턴스의 OID는 select 클래스명 from 클래스명 ... 형태로 select 절에 클래스 명을 명시 해주면 select의 결과로 OID가 조회됩니다.

 

위의 OID를 알아내는 방법을 토대로 인스턴스를 생성하는 방법을 보면 insert 문장 안에 insert 문장을 중첩 사용해서 내부 insert 문장이 수행된 결과 OID가 외부 insert 문장에 적용되도록 하는 insert into actorselect values ({(insert into organization values(...)),(insert ..)})

형태로 사용하면 되겠고,

두번째로 이미 존재하는 인스턴스를 저장할 경우에는

insert into actroselect values({(select organization from organization ...),(select person from person ...)}) 형태로 사용하면 됩니다.

 

위 답변이 이전에 질문 주신 \"일반화 하는 데이터 타입 질문\"에 대한 답변에도 해당하는 것 같습니다.

 

>다음 두개의 질의문에 잘못된 점이 있는지와 두 질의문의 결과가 어떻게 다른지 궁금합니다.

>그리고 Organization, Person, PersonAndOrganization이 모두 entity일 때 어떻게 referencing할 수 있는지 알고 싶습니다.

>

>CREAT CLASS ActorSelect (

>        SET(Organization, Person, PersonAndOrganization));

>

>CREAT CLASS ActorSelect (select * from

>        SET(Organization, Person, PersonAndOrganization));

>

>감사합니다.

 

손승일님이 2008-05-27 09:42에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1096Q.큐브리드에서 사용자정의 집계함수를 만들수 있나요 ? [1]
최보현
2008-05-28
7933
1095Q.처음 demodb생성후 가동시킬때 [1]
임대현
2008-05-27
7771
1094Q.embeded sql을 윈도우 xp, 비주얼 C++환경에서 컴파일 방법을 알고 싶습니다. [1]
김재우
2008-05-27
8588
1093Q.SET 질의문과 referencing [1]
김선우
2008-05-26
8361
1092Q.db생성 [1]
송준석
2008-05-26
8469
1091Q.일반화(generalization)하는 데이터 타입 질문 [1]
김선우
2008-05-26
8698
1090Q.set data type 질문 [1]
김선우
2008-05-26
8671
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다