2012-09-11 5 views
1

SQL Server 2005에서 고유 한 카운터 생성기를 구현하는 가장 좋은 방법은 무엇입니까? 그래서 하나의 값을 가진 테이블에 하나의 필드가 있습니다.SQL Server 기반 카운터

나는 현재 값을 얻으려면 또한 다음 증분 값을 보유 할 1.

그래서 데이터베이스에 의해 증가. 몇 가지 select + update 콤보를 시도했지만이 카운터는 독립적 인 응용 프로그램의 다양한 호출에서 매우 힘들었습니다 (분당 5000 회). 응용 프로그램이 느린 것 같습니다. 더 좋은 카운터를 얻으려면 어떻게해야합니까? 우리는 각 응용 프로그램마다 다른 테이블을 가질 수 없도록 값을 직렬로해야합니다.

나는 여기 누군가에게서 제안을 받았다 : http://www.sqlines.com/mysql/how-to/select-update-single-statement-race-condition 그러나 그것이 맞는지 또는 다른 문제가 있을지 모른다.

+0

오라클과 같은 SEQUENCES는 SQL Server 2012를 사용했습니다. 2005를 사용하면 자신의 논리를 사용해야합니다 (예 : http://stackoverflow.com/questions/661998/oracle- 시퀀스 - but-then-ms-sql-server) – Najzero

답변

0

ID 열을 사용하여 테이블에 행을 삽입 할 수 있습니까? SCOPE_IDENTITY을 사용하여 삽입 된 카운터 값을 검색하면 이전 버전이 무엇인지 알 수 있습니다. 기존 행을 검사하지 않기 때문에 빠릅니다. 요청 별 행을 저장할 필요가없는 경우 가끔이를 제거 할 수 있습니다.

관련 문제