로비님 참고하세요.
인터베이스에서 자동증가 필드는 보통 트리거를 이용해서 구현합니다.
만일, 사원테이블에서 SAWONID Field가 자동증가 필드라 가정시...
CREATE TABLE SAWON (
SAWONID INTEGER NOT NULL,
.........,
CONSTRAINT SAWON_PRYMARY_KEY PRIMARY KEY (SAWONID)
);
처럼 테이블을 생성하고
CREATE GENERATOR SAWON_GEN;
SET GENERATOR SAWON_GEN to 10000;
SET TERM ^ ;
CREATE TRIGGER SAWON_TRG FOR SAWON
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.SAWONID = GEN_ID(SAWON_GEN, 1); <--10001번부터 생성됨..
END ^
SET TERM ;^
INSERT INTO SAWON VALUES ( NULL, '김..',,,,); <--10001번
INSERT INTO SAWON VALUES ( 1, '김..',,,,); <--10002번
INSERT INTO SAWON VALUES ( 1000, '김..',,,,); <--10003번
값이 있을때는 값으로 넣으려면...
CREATE TRIGGER SAWON_TRG FOR SAWON
BEFORE INSERT
AS
BEGIN
IF (NEW.SAWONID IS NULL) THEN
NEW.SAWONID = GEN_ID(SAWON_GEN, 1);
END ^
INSERT INTO SAWON VALUES ( NULL, '김..',,,,); <--10001번
INSERT INTO SAWON VALUES ( 1, '김..',,,,); <--1번
INSERT INTO SAWON VALUES ( 1000, '김..',,,,); <--1000번
이렇게 되더라고요.