2013-07-09 1 views
0

연구 결과가 나오지 않았으므로 빠른 답변을 얻으 려하고이 속도를 테스트하는 방법을 모르겠습니다. 시나리오는 20 개의 필드와 26000 개의 행이있는 테이블을 가지고 있습니다. 테이블이 필드를 채울 테이블의 일부 필드에 바인드 된 양식이 있습니다. 그래서 파트를 입력하면 설명, 평균 비용 및 제품 코드가 채워집니다.SELECT 대 FindFirst VBA 액세스 양식

이제 내 질문 : 부품을 입력하고 그 문을 사용하여 부품을 점검 할 때마다 양식 필드를 채우는 데 사용한 후 SELECT 문을 사용해야합니까? 따라서 레코드 세트가 만들어지고 설정되며 매번 설정되지 않습니다. 또는 테이블에서 필요한 모든 필드에 대해 SELECT 문을 실행하고 해당 레코드 세트에 해당 레코드 세트에 .FindFirst을 사용할 때마다 해당 26000 행의 레코드 세트를 설정해야합니까? 더 빠르거나 옳은 것은?

나는 완전히 완전히 잘못 될지도 모르지만, 나는 나가서 배우려고 노력하고있다.

미리 감사드립니다.

+0

시간이 오래 걸리십니까? 나는 26000 개의 레코드가 큰 숫자는 아니지만 어느 것이 더 빠르는지를 말할 수 없다고 생각한다. 그러나, 당신이 말하는 두 가지 방법이 다릅니다. 첫 번째는 레코드 세트를, 두 번째는 .FindFirst를 사용하면 레코드를 1 개만 돌려줍니다. 나는 네가 여기서하고 싶은 것을 얻지 못한다. 그래서 너는 더 많은 것을 정교 할 수 있다면 도움이 될 것이다. – Nexus

+0

나는이 같은 것을위한 적절한 절차가 무엇인지 궁금했다. 'SELECET' 모든 행을 저장하고'.FindFirst'를 사용하여 빠른 액세스를 위해 저장할 수 있습니다. 또는 경우에 따라'SELECT'를 사용하십시오. 나는 "적절한 절차"로 간주되는 것을 이해하고 싶습니다. – Grant

답변

1

간단한 첫 번째 작업 : 매번 실행되는 간단한 SELECT 문.

다른 방법은 테이블을 10 배 더 크게 (어쩌면) 좋을 수 있으며 더 복잡한 절차를 처리하기에 좋습니다. 당신이 묘사 한 목적과 테이블은 간단한 방식으로 관리하는 것이 좋을 것 같습니다.

작업 속도가 느린 경우 다른 레코드 세트 방식을 시도하기 전에 필드가 올바르게 인덱싱되었는지 확인하여 테이블을 최적화하십시오.

+0

굉장한, 내가 찾고 있었던 것이었다. 귀하의 의견을 보내 주셔서 감사합니다. – Grant