2014-06-05 3 views
0

큰 데이터 세트의 데이터를 집계하는 일련의 저장 프로 시저를 작성하고 있습니다.동일한 이름을 가진 여러 로컬 임시 테이블

스토어드 프로 시저의 메인은 데이터가있는 다른 서버를 호출합니다. 데이터는 단계적으로 계산되고 여러 임시 테이블 (현재 전역 임시 테이블)에 저장된 다음 앉아있는 서버로 가져옵니다 (연결된 서버가 설정되는 방식 때문에 수행됩니다).

지금은 여러 사람이 동시에 저장 프로 시저를 실행할 수 있으므로 임시 식별자를 사용하여 임시 테이블을 만드는 동적 SQL을 작성하려고합니다. 그러나이 과정의 하위 단계의 수가 많아 져서 복잡해지고 있기 때문에 생각하고 있는지 궁금합니다.

내 질문에 단순화하고 로컬 temp 테이블을 사용하면 테이블에 같은 이름이 생기기 때문에 문제가 발생합니까? 참고 : 사용자는 동일한 로그인 사용자 이름을 가질 수 있습니다.

+0

각 사용자마다 전용 데이터베이스 세션이 있습니까? 종종 응용 프로그램은 여러 사용자에 대해 하나의 세션을 동시에 사용하거나 풀링하므로 사용자는 응용 프로그램을 사용하는 동안 동일한 세션을 사용할 수 없습니다. –

+0

괜찮을 겁니다. 당신이하는 일의 예를 보여줄 수 있습니까? – Rahul

+0

그들은 내가 가진 우려의 일부인 동일한 로그인 계정을 사용합니다 (팀별로 그룹화됩니다). – Cypherwolf

답변

1

임시 테이블 이름은 세션별로 지정됩니다. SqlConnection.Open에 전화하면 새로운 세션을 시작하게됩니다. 일반적으로 응용 프로그램은 HTTP 요청간에 세션을 공유하지 않습니다. 이것은 공통된 것도 아니고 좋은 일도 아닙니다.

나는 당신에게 문제가 있다고 생각하지 않습니다. 이름 충돌이 발생하면 먼저 세션을 공유하지 않도록 응용 프로그램을 수정해야합니다.

관련 문제