AUTO_INCREMENT 를 설정하려고하는데요
CREATE CLASS board(
idx INT AUTO_INCREMENT PRIMARY KEY
name VARCHAR(100) NOT NULL
}
이런식으로 생성해야 하는건 알고있습니다만
이미 생성된 테이블은 어떻게 설정하지요?
매니저에서 설정할수있나요?
안녕하세요.
현재 자동증가 속성은 SQL 문으로만 가능하며, 다음 버전부터는 매니져에서 지정할 수 있도록 준비하고 있읍니다.
이미 생성된 테이블에 대하여는 필드를 추가하면서 속성을 주는 것은 가능하나, 이미 있는 필드에 속성을 추가하는 것은 현재 불가능 합니다.
필드를 추가하는 경우 기존 레코드들에서는 추가한 필드의 값이 NULL 이 되므로 이에 대한 조치가 필요합니다. 만약에 값을 인위적으로 넣었다면(물론 순차적이겠죠) 자동증가의 현재값을 변경시켜주어야 합니다. 자동증가는 내부적으로 serial 개체를 사용하므로 해당 개체의 현재값을 변경시켜주면 됩니다.
올려주신 예를 가지고 설명드리면, board_ai_idx 의 이름으로 serial 이 생깁니다.(table이름_ai_필드이름) 이 값의 현재값을 바꿔주면 됩니다. 예를 들어 10개의 레코드에 값을 넣어 현재 10까지 증가되어있다면 이 값을 10 으로 바꿔주면 됩니다.
update db_serial set current_value where name = \'board_ai_idx\'
와 같이 하시면 됩니다.
이미 있는 필드에 속성을 추가하는 방안은 내부 협의를 거쳐 다음 버젼에 제공할수 있도록 하겠읍니다.
>AUTO_INCREMENT 를 설정하려고하는데요
>
>CREATE CLASS board(
> idx INT AUTO_INCREMENT PRIMARY KEY
> name VARCHAR(100) NOT NULL
>}
>이런식으로 생성해야 하는건 알고있습니다만
>이미 생성된 테이블은 어떻게 설정하지요?
>매니저에서 설정할수있나요?