나는 실행시 데이터베이스에 my_report_user
username으로 연결되는 보고서를 가지고 있습니다. 보고서의 많은 최종 사용자가있을 수 있습니다. 각 실행마다 데이터베이스에 대한 새로운 연결이 my_report_user
(연결 풀링이 없음)으로 이루어집니다. 연결 풀링이 없습니다.로컬 대 전역 임시 테이블 - 무엇을 사용해야합니까?
나는 한 번만 만들 수있는 결과 세트가 있습니다 (보고서의 첫 번째 실행 일 수 있음) 다른 보고서 실행은 그 물건을 재사용 할 수 있습니다. 기본적으로 각 보고서 실행은이 결과 집합 (임시 테이블로 저장 됨)이 존재하는지 여부를 확인해야합니다. 존재하지 않는다면 그 결과 집합을 만든다.
local
임시 테이블 (#) 또는 global
임시 테이블 (##)을 사용해야합니까?
누구나 그런 것들을 시도 했습니까? 그렇다면 모든 것이 무엇에 관한 것인지 알려주세요. 당신이 당신의 자신의 통제하에 결과 결과 집합을 캐시하려면 나는 SQL-Server를 사용하고 2005 년
어떤 버전의 SQL Server입니까? 2005 년 이상이면 CTE (및 재귀 CTE)가 또 다른 옵션입니다. 당신이 그들과 함께해야 할 일에 대해 더 많이 알지 못한다면 나는 글로벌 임시 테이블에 대한 로컬을 권고한다. ... –
최악의 가정하기 : 연결이 여전히 존재하기 때문에 글로벌 temp 테이블이 삭제되지 않는다. 해당 테이블의 데이터가 유효하지 않게됩니까? 즉, 보고서의 불량 데이터를 방지하기 위해 데이터를 절대적으로 새로 고쳐야하는 시점을 정의합니다. –
its sql-server 2005. 로컬 임시 테이블을 사용하면 재사용이 가능합니까? 나는 로컬 임시 테이블이 다중 보고서 실행에서 재사용 가능성을 허용하지 않을 것이라고 생각했다. 버전을 아는 지금 뭐라하니? – peakit