다음은, 본 사이트의 개발자 교육 교재 3장 38page 예제 일부 입니다.
============================================
create table company (
company_id char(5), // 고객회사코드
company_name varchar(200)// 고객회사이름
);
create table client (
company_oid company ,// 고객회사정보
client_name varchar(20) ,// 고객이름
title varchar(10),// 직위
email varchar(100),// 이메일
phone varchar(20),// 전화번호
address varchar(200),// 주소
client_hobby set(varchar(100))// 고객취미
);
============================================
예제가 성공적으로 작동되고 개념도 이해가 가는데,
client table 의 company_oid 컬럼에 어떻게 값을 집어 넣을 수 있는지 알기가 어려웠습니다.
나름대로 자료를 찾아보았습니다만 방법을 찾지 못 했습니다.
insert 예제문을 제시해 주시면, 감사하겠습니다.
============================================
create table company (
company_id char(5), // 고객회사코드
company_name varchar(200)// 고객회사이름
);
create table client (
company_oid company ,// 고객회사정보
client_name varchar(20) ,// 고객이름
title varchar(10),// 직위
email varchar(100),// 이메일
phone varchar(20),// 전화번호
address varchar(200),// 주소
client_hobby set(varchar(100))// 고객취미
);
============================================
예제가 성공적으로 작동되고 개념도 이해가 가는데,
client table 의 company_oid 컬럼에 어떻게 값을 집어 넣을 수 있는지 알기가 어려웠습니다.
나름대로 자료를 찾아보았습니다만 방법을 찾지 못 했습니다.
insert 예제문을 제시해 주시면, 감사하겠습니다.
해당 부분은 큐브리드의 객체지향 개념에 기반을 둔 설계이구요 입력하는 방법은 여러가지가 있습니다.
1.중첩 입력(두개의 테이블에 모두 데이타가 없는 경우)
insert into client(company_oid, client_name, title, email, phone, address, client_hobby)
values(insert into company(company_id, company_name) values('00001','CUBRID'),
'GTPARK','부장','gtpark_at_cubrid.com','1111','Korea',{'football','golf'});
2.별개로 입력(두 문장을 하나의 트랜잭션으로 처리)
insert into company(company_id, company_name) values('00001','CUBRID') to :X;
insert into client(company_oid, client_name, title, email, phone, address, client_hobby)
values(:X,'GTPARK','부장','gtpark_at_cubrid.com','1111','Korea',{'football','golf'});
3.조회 후 입력(두 문장을 하나의 트랜잭션으로 처리)
select company into :X from company where company_id = '00001'; // 반드시 하나의 레코드여야만 함
insert into client(company_oid, client_name, title, email, phone, address, client_hobby)
values(:X,'GTPARK','부장','gtpark_at_cubrid.com','1111','Korea',{'football','golf'});
개념적으로 완전하게 이해가 되지 않으신다면 그냥 RDB형태를 이용하시면 좋을 것 같구요
객제지향 설계에 관심이 있으시면 위처럼 이용하시면 됩니다.
개념이 너무 어려워 배우시는 분들이 많지 않은데...
여하튼 관심을 가져 주셔서 감사합니다.