ASP 페이지에 쿼리가 있습니다. 필자가 작성한 레코드 세트는 조건에 따라 3 개의 다른 테이블에 인쇄해야합니다. 따라서 거의 동일한 쿼리를 3 번 실행하지 않기 위해 필자는 필요한 결과를 얻기 위해 레코드 집합을 검색하기로 결정 했으므로 RS.MoveFirst를 두 번 만들어야합니다. 하지만 ... SQL 프로파일 러를 사용하여 분석 할 때 MoveFirst 작업이 쿼리를 다시 실행하는 것을 보았습니다. 결과를 캐시하고 레코드 세트 만 이동할 수 있습니까?MoveFirst에서 쿼리를 다시 실행하지 않는 방법
3
A
답변
2
를 사용하여 연결이 끊긴 된 레코드 당신은 당신의 SQL에 공급하는 매개 변수를 가질 경우 연결 및 레코드 사이의 ADODB.Command
객체를 사용할 필요가 있음을
Const adOpenStatic = 3
Const adUseClient = 3
Const adLockOptimistic = 3
Dim conn: Set conn = Server.CreateObject("ADODB.Connection")
conn.Open sYourConnectionString
Dim rs : Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = adUseClient
rs.Open sYourSQL, conn, adOpenStatic, adLockOptimistic
Set rs.ActiveConnection = Nothing
conn.close
'' // You can now roam around the recordset with .MoveFirst, .MoveNext etc without
'' // incurring any further hits on the DB.
주 (문자열 연결을 사용하도록 유혹하지 않음) . 여전히 원리는 클라이언트 커서 위치와 정적 레코드 세트를 사용하여 동일한 연결을 분리하고 닫는 것입니다.
+0
'''adOpenStatic = 3''' 정적 커서를 사용합니다. ** 데이터를 찾거나 보고서를 생성하는 데 사용할 수있는 레코드 집합 **의 정적 복사본입니다. 다른 사용자의 추가, 변경 또는 삭제는 표시되지 않습니다. https://msdn.microsoft.com/en-us/library/ee252445(v=bts.10).aspx –
1
개인적으로 나는 단순히 u는 u는 성능 매번 당신이
관련 문제
- 1. osql이 쿼리를 실행하지 않습니다.
- 2. pg_query()가 루프에서 쿼리를 실행하지 않는 것 같습니다
- 3. python을 실행하지 않는 함수
- 4. HttpRequest에서 쿼리를 다시 보내는 방법
- 5. 긴 쿼리를 다시 작성하는 방법?
- 6. WcfSvcHost.exe 실행하지 않는 WCF 도서관
- 7. 프로토 타입 ajax가 쿼리를 제대로 실행하지 않음
- 8. Wordpress dbDelta 함수가 내 쿼리를 실행하지 못합니다.
- 9. Python에서 SQL 쿼리를 실행하지 않고 형식 지정
- 10. NSFetchedResultsController를 사용하여 쿼리를 다시 시작하는 방법
- 11. 다음 mysql 쿼리를 다시 작성하는 방법
- 12. 이 linq 쿼리를 올바르게 다시 쓰는 방법?
- 13. 이 상황에서 select 쿼리를 다시 작성하는 방법
- 14. 쿼리를 실행할 때 결과를 표시하지 않는 방법
- 15. MSBuild가 여러 대상을 실행하지 않는 이유는 무엇입니까?
- 16. bash : 루트가 스크립트를 실행하지 않는 경우 실패합니다.
- 17. Hibernate가 SQL을 실행하지 않는 이유는 무엇입니까?
- 18. HTML을 표시하고 실행하지 않는 방법이 있습니까?
- 19. Java Desktop Application을 실행하지 않는 이유는 무엇입니까?
- 20. NSTimer를 만들고 있지만 실행하지 않는 방법은 무엇입니까?
- 21. PHP 파일을 실행하지 않는 이유는 무엇입니까?
- 22. JUnit은 실제로 assertion을 실행하지 않는 테스트를 수행합니다.
- 23. 선택 코드의 일부를 다시 사용하는 LINQ에서 집계 쿼리를 작성하는 방법
- 24. 하위 나는이 같은 쿼리를 선택 I가 지원하지 않는 mysql4.0에 mysql5 용으로 작성된 쿼리를 다시 작성해야 부속에게
- 25. 방법 : fadeIn이 다시 페이드되지 않는 경우 (jQuery)
- 26. 이 SQL 쿼리를 다시 작성하십시오
- 27. 생성 된 쿼리를 실행하지 않고 액세스 할 수 있습니까?
- 28. 파이어 버드 닷넷 제공자가 쿼리를 완전히 실행하지 못합니까?
- 29. 원격 (연결된 MySQL) 서버에서 SQL Server가 쿼리를 실행하지 않음
- 30. jquery 검색을 다시 실행하지 않는 동안 jquery 요소 배열을 추가로 필터하는 방법은 무엇입니까?
스냅 샷 또는 동적 데이터 세트 사용의 거대한 이득을 볼 수 데이터베이스를 다시 공격 결코 확신뿐만 아니라 ...
rs.getRows()
를 사용하여 배열로 이동 한 것? dbSeeChanges가 사용됩니까? –forwardonly (기본값) Obs : 쿼리를 처음 실행 한 후에 변경하지 않아도됩니다. – Roxana