FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[348] Re:Re:GENERATOR를 쓰면 됩니다.
김백일 [cedar] 2324 읽음    2002-07-03 14:17
하안인 님이 쓰신 글 :
: 김백일 님이 쓰신 글 :
: : 하안인 님이 쓰신 글 :
: : : 필드키를 번호를 매기려고 속성+년+월+일련번호 식으로
: : : 키값을 정의해서 사용하려고 합니다.
: : : 그런데 두대의 피씨를 a,b라 가정하면
: : : a에서 일련번호를 매기고 등록하는 중에 b에서 일련번호를 매기면
: : : 두대의 피씨에 똑같은 일련번호가 생기잖아요.
: : : 아직 a에서 commit하지 않은 관계로요.
: :
: : 이미 비슷한 질문이 올라왔었습니다.
: : http://firebird.borlandforum.com/impboard/impboard.dll?action=read&db=fb_qna&no=272
: :
: : GENEARATOR 는 DBMS 자체에서 만들어지기 때문에,
: : 절대로 같은 일련번호가 동시에 생기지 않습니다.
: :
: 일련번호를 쓰려는것이 아니라 일련번호란 말을 제가 잘못사용했습니다.
: 사용자번호로 다시 정정하겠습니다.
: 사용자번호를 그날에 추가된 것으로 일련번호형식으로 뒤에만 추가를 할예정입니다.
: 즉, 위에서 애기한대로 속성(1,2,3중하나)+년+월+숫자(3) 으로 번호를 매겨
: 각 속성마다 사람에대한 정보가 틀립니다.
:
: generatator는 말 그대로 일련번호만을 매기는 것이 아닌가요.

매월마다 GENERATOR를 1로 초기화 한 후,

SET GENERATOR ID_GEN TO 1

다음과 같이 CAST 와 문자열 결합(||) 연산자를 사용해서
TRIGGER나 STORED PROCEDURE 에서 사용자번호를 만들어 주면 됩니다.

NEW_USER_ID = ATTR || YEAR || MONTH || CAST(GEN_ID(ID_GEN, 1) AS CHAR(3))

+ -

관련 글 리스트
345 [질문] 일련번호같은것.. 하안인 2324 2002/07/03
346     GENERATOR를 쓰면 됩니다. 김백일 2315 2002/07/03
347         Re:GENERATOR를 쓰면 됩니다. 하안인 2324 2002/07/03
348             Re:Re:GENERATOR를 쓰면 됩니다. 김백일 2324 2002/07/03
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.