SQL Server 테이블 (사람)에서 레코드를 검색하는 메서드 (GetPeople)가있는 데이터 액세스 계층 클래스가 있습니다. 이 테이블에는 varbinary
유형을 포함하여 20 개가 넘는 필드가 있습니다.vb.net DAL 반환 된 열 지정
는 지금, SQL 쿼리 내 BLL 클래스에서
SELECT * FROM people
같은 것을, 나는 모든 열을 반환하는, DAL.GetPeople()
를 호출합니다.
성능을 향상시킬 수 있도록 반환 할 열을 지정하는 가장 좋은 방법은 무엇입니까? 예를 들어, 때로는 모든 필드를 반환하고, 다른 경우에는 한두 개만 반환하려고합니다.
UPDATE 더 잘 설명하기 : DAL에서 내가는 SQL 서버 기능 GetPeople를 호출하는 방법 GetPeople()를 가지고있다. BLL에서 비즈니스 로직을 수행 한 후 DAL.GetPeople()을 호출하는 GetPeople() 메소드가 있습니다. 내 프레젠테이션 계층에서 BLL.GetPeople()을 호출합니다.
이 기능은 작동하지만 SQL 기능에서 "SELECT * FROM people"이 있습니다. 때로는 테이블에서 하나의 열 (예 : .name) 만 검색하려고하지만이 경우 모든 열이 반환되므로 성능에 영향을 미친다 고 생각합니다.
그래서, 난 ... 열이 나는 함수를 호출하는 방법에 따라 달라 반환이 SQL 서버 기능, 동적 SELECT 쿼리의 종류를 가지고 싶습니다
당신의 DAL을 어떻게 작성 했느냐에 달려 있다고 생각합니다. ADO, EF, Simple.Data? 그것이 의미하는 바에는 너무 개방적이어서 질문을 끝낼 수 있습니까? –
중요한 것은 GetPeople 메서드가 반환하는 형식입니다 - 클래스, 데이터 집합, 기타? 또한 Select *를 사용하지 마십시오. 명시 적으로 열을 지정하십시오. –
데이터 집합 ...이 메서드가 반환 할 것입니다. 물론, "*"를 사용하고 싶지 않기 때문에 열을 지정하려고합니다 ... – escar