우리는 아래와 같이 테이블을 생성 했습니다.
CREATE TABLE STYLES
(
STYLE_CODE CHAR2(8) NOT NULL,
COLOR CHAR2(2),
FEATURE CHAR2(2),
SIZE CHAR2(2),
YEAR CHAR2(2)
CONSTRAINT STYLE_CODE_PK PRIMARY KEY (STYLE_CODE)
);
만약 데이터가 아래처럼 입력 된다면
insert into STYLES
(COLOR, FEATURE, SIZE, YEAR) VALUES ('11','AB','A0','23')
4개의 입력되는 값 '11','AB','A0','23' 으로
PK 값을 자동으로 "11ABA023" 로 생성할 수 있는 Trigger 만들거나 다른 방법이 있는지?
위 테이블 그대로 한다면? 트리거로 가능할 듯 합니다.
테이블 변경이 가능하다면? 4개 항목만 관리하는 방안도 고려할 수 있습니다. (복합키)
이 경우, 코드는 (쿼리, 뷰, 가상컬럼) 등을 활용하여 추출 할 수 있습니다.
감사합니다.
12버전 이상이시면 generate column을 사용해보시는건 어떨지요? 아 위에서 이미 말씀해주셨군요..;
CREATE TABLE STYLES
(
STYLE_CODE GENERATED ALWAYS AS ( COLOR || FEATURE || SIZE_T || YEAR ) NOT NULL,
COLOR CHAR(2),
FEATURE CHAR(2),
SIZE_T CHAR(2),
YEAR CHAR(2),
CONSTRAINT STYLE_CODE_PK PRIMARY KEY (STYLE_CODE)
);
직접 테이블을 생성하는 Query 문을 만들어 주셔서 문제를 해결 했습니다. 감사합니다.