2013-09-30 2 views
0

복잡한 개체를 작성하는 데 더 나은 방법 인 (열망하는로드). 여러 결과 집합을 반환하는 저장 프로 시저에 대한 단일 호출 또는 각각 하나의 결과 집합으로 저장 프로 시저에 대한 다중 호출? 나는 DAL을 .NET의 T4/text 템플릿을 사용하여 제작하고 있으므로 저는 후자에 기대고 있습니다.데이터 액세스 디자인 : 다중 결과 집합 저장 프로 시저 당 단일 저장된 프로 시저 또는 단일 결과 집합

감사합니다.

+0

용의자가 전화를해야합니다. 덜 복잡하고 유지 관리가 쉬운 코드로 인해 성능이 저하됩니다. – Rikalous

답변

0

이것은 응용 프로그램의 전체 아키텍처 설계 모델에 따라 다릅니다. Table Data Gateway 또는 Active Record을 사용하는 경우에는 후자가 더 좋습니다. 도메인 모델 또는 Domain driven Design을 사용하는 경우 전자가 훨씬 적합합니다.

0

한 번에 둘 이상의 결과 집합을 반환하는 저장 프로 시저를 마지막으로 작성한 것을 기억할 수 없습니다. 실제로 전체적인 이익은 드뭅니다.

내가 그런 것을 할 수 있다고 생각하는 유일한 이유는 (a) 실적 - 예 : SELECTS가 모든 테이블에 공통적 인 임시 테이블이나 많은 설정을 필요로하거나 (b) 호출간에 데이터가 변경 될 위험이 있고 직렬화 가능 격리 의미를 사용하려는 경우.

모든 행 집합이 서로 독립적이며 공통된 설정이없는 경우에는 확실히 구분하십시오. 왕복 비용은 낮은 수준의 연결 프로토콜 (예 : TCP/IP 또는 명명 된 파이프 및 XML을 통한 SQL과 같은 수다스러운 기술이 아닌)을 사용한다고 가정 할 때 중요한 요소는 아닙니다. 또한 sprocs를 별도로 호출 할 수 있다면 비동기식으로 병렬 호출 할 수 있으며 문제를 해결하려면 우수한 성능을 얻을 수도 있음을 의미합니다.

관련 문제