SqlDataReader는 저장 프로 시저를 더 빠르게 처리합니다. SQLDataReader를 사용할 때의 장점/단점은 무엇입니까?SQLDataReader를 사용할 경우 장점/단점은 무엇입니까?
답변
"결과를 DataTable에로드하는 대신"을 의미한다고 생각합니까?
장점 : 데이터로드 방법을 제어 할 수 있습니다. 특정 데이터 형식을 요청할 수 있으며 원하는 경우가 아니면 전체 데이터 집합을 동시에 메모리에로드하지 않아도됩니다. 기본적으로 데이터를 원하지만 데이터 테이블이 필요하지 않은 경우 (예 : 자신 만의 컬렉션을 채우기 위해) 중간 단계의 오버 헤드가 발생하지 않습니다.
단점 : 데이터로드 방식을 제어하고있어 실수를 저지르기 쉽고 더 많은 작업이 필요합니다.
여기에 어떤 사례가 있습니까? 정상적인 (또는 강하게 입력 된) 데이터 테이블을 사용하는 오버 헤드가 성능에 심각한 영향을 미친다고 믿을만한 이유가 있습니까? 나는 그렇게할만한 이유가 있다면 SqlDataReader를 직접 사용할 것입니다.
당신이해야 할 일에 달려 있습니다. 데이터베이스에서 결과 페이지 (예 : 20 개 레코드)를 얻으면 데이터 어댑터를 사용하여 DataSet을 채우고이를 UI의 무언가에 바인딩하는 것이 좋습니다.
그러나 많은 레코드를 한 번에 하나씩 처리해야하는 경우 SqlDataReader를 사용하십시오.
장점 : 더 빠르고, 적은 메모리.
단점 : 연결된 상태로 있어야하며 리더기를 반드시 닫아야합니다.
SQLDataReader를 선택하는 주된 이유는 속도가 중요하다는 것입니다.
아직 언급되지 않은 단점 중 하나는 SQLDataReader가 전달 전용이므로 레코드를 한 번만 처리 할 수 있다는 것입니다. 즉, 그렇게 빨리 처리 할 수있는 작업 중 하나입니다. 많은 경우에 괜찮지 만 레코드를 두 번 이상 반복하거나 데이터를 추가/편집/삭제해야하는 경우 대안 중 하나를 사용해야합니다.
또한 모든 레코드를 처리하고 판독기를 닫을 때까지 연결된 상태로 유지됩니다 (물론 이전에 닫으려고해도 나머지 레코드에는 액세스 할 수 없습니다). 레코드를 반복하면서 레코드를 오랫동안 처리하려고하면 다른 데이터베이스 연결에 영향을 줄 수 있습니다.
데이터가 결론적이지 않을 수 있으며 길가에있는 우유 맨이 항상 데이터를 휴대해야하는 행동을 통제하지 못하거나 데이터로 인해 금이 간다. 경찰관이 휴대하지 않을 것입니다. 다른 사람들의 데이터를 유지하는 것이 잘못되었다고 생각하고 다른 사람의 데이터를 잘못 보관한다고 생각하기 때문에 모든 데이터. Sheffield에 살고있는 소녀가 있습니다. 그녀는 나가서 집에서 나가는 대부분의 시간을 즐긴다. 그래서 그녀의 부모님과 그녀의 다른 이야기가 평화의 정원으로 옮겨 졌기 때문에 그녀와 이야기하고 싶지 않습니다. 모두가 노래하고 머물기를 좋아합니다. 일반적으로 유명한 Celebs는 aroun dthere를 끊으려고하지만 우리가 그만두기를 원하지 않기 때문에 항상 최고의 보안이 있습니다. KK 지금 너는 2시 가고 서쪽 끝에서 차가워 질 필요가있다. 평화 "!!!"$$$ MOney MAN으로 만든 $$$$
- 1. SqlDataReader를
- 2. Sybase ASE에서 SQLDataReader를 사용할 때의 문제
- 3. SQLDataReader를 사용하여 DateTimeMode 변경
- 4. SqlDataReader를 수동으로 닫고 처리해야합니까?
- 5. SqlDataReader를 사용하여 적용하기
- 6. 효율적으로 XElement에 대한 SqlDataReader를 사용합니다.
- 7. SQLDataReader를 소스로 사용하는 리피터 페이징
- 8. SqlDataReader를 Repeater에 바인딩합니다. 좋은 연습?
- 9. SqlDataReader를 사용하여 ArrayList를 채우고 있습니까?
- 10. SqlDataReader를 다중 스레드하는 방법이 있습니까?
- 11. 이 경우 사용할 올바른 Java 콜렉션은 무엇입니까?
- 12. VS 2010을 사용할 경우
- 13. 저장 프로 시저에 둘 이상의 SELECT 문이있는 경우 SqlDataReader를 사용하는 방법
- 14. IDatareader를 구현하는 판독기에서 SQLDataReader를 사용하면 어떤 이점이 있습니까?
- 15. 키보드 저널링을 사용할 수없는 경우 키 입력을 기록하는 방법은 무엇입니까?
- 16. WiFi를 사용할 수없는 경우 전화 데이터 서비스를 사용하는 방법은 무엇입니까?
- 17. Pimpl 관용구 : 구현을 알 수없는 경우 사용할 size_type은 무엇입니까?
- 18. 서버를 사용할 수없는 경우 애플리케이션 동결을 방지하는 방법은 무엇입니까?
- 19. 코드베이스를 사용할 수있는 경우 애플릿의 호스트 매개 변수는 무엇입니까?
- 20. 이 경우 사용할 mysql 테이블 구조
- 21. XmlReaderSettings.Schemas를 사용할 때 성능이 저하되고 사용할 여러 스키마를 지정하는 경우
- 22. C++ - 함수 인라이닝을 사용할 수없는 경우?
- 23. 이 경우 WCF를 사용할 수 있습니까?
- 24. IsEnabled False Binding.Source를 사용할 수없는 경우
- 25. 다른 클래스에서 사용할 경우 PrintWriter의 값이 무효화됩니다.
- 26. 커널 스레드를 사용할 때와 리눅스 커널에서 작업 큐를 사용하는 경우
- 27. 사용할 컨텍스트는 무엇입니까?
- 28. 애니메이션에 사용할 도구는 무엇입니까?
- 29. SqlDataReader가 닫힐 때까지 출력 매개 변수를 검색 할 수없는 경우 이유는 무엇입니까? SqlDataReader의 사용되는 동안
- 30. xsd를 사용할 수있는 경우 Linq를 사용하여 xml 액세스
나는 당신의 대답에 완전히 동의한다. –