MultipleActiveResultSets = 참 또는 다중 연결?
연결 ( ExecuteReader
)에서 리더를 만든 다음 해당 리더의 모든 행에 대해 다른 명령 (사용 ExecuteNonQuery
)을 수행 하는 C #이 있습니다 . 이 경우 MultipleActiveResultSets=True
연결에서 사용하거나 여러 연결을 사용하는 것이 더 낫 습니까?
이러한 유형의 작업을 위해 특별히 MARS (Multiple Active Result Set)가 추가되었으므로 SqlDataReader에서 읽고 추가 일괄 처리를 실행하기 위해 동시에 두 개의 연결을 열 필요가 없습니다.
MARS는 SQL Server 2005 이상과 호환됩니다. MSDN 문서에서 인용하려면 :
MARS (Multiple Active Result Set)가 도입되기 전에 개발자는 특정 시나리오를 해결하기 위해 다중 연결 또는 서버 측 커서를 사용해야했습니다.
자세한 내용은 다음을 참조하십시오.
데이터 읽기 및 업데이트 작업 예제 :
MSDN Library-데이터 조작 (MARS) 'MARS로 데이터 읽기 및 업데이트'까지 아래로 스크롤합니다.
이것은 내가 MARS가 추가 된 이유를 아는 한입니다. 그렇기 때문에 그것을 사용해야한다고 생각합니다.
이를 테스트하는 가장 좋은 방법은 SQLServer Profiler를 실행하고 서버 측에서 실제로 어떤 일이 발생하는지 확인하는 것입니다.
내 생각 엔 ExecuteNonQuery ()를 사용하고 있기 때문에 더 좋지 않을 것입니다. 따라서 실제로 여러 결과로 작업하지 않습니다.
참고 URL : https://stackoverflow.com/questions/510899/multipleactiveresultsets-true-or-multiple-connections
'Nice programing' 카테고리의 다른 글
ES6 게터 / 세터 (화살표 기능 포함) (0) | 2020.10.19 |
---|---|
Apache Spark 웹 UI에서 "단계 건너 뜀"은 무엇을 의미합니까? (0) | 2020.10.19 |
MongoDB 스키마 설계-작은 문서가 많거나 큰 문서가 적습니까? (0) | 2020.10.19 |
왜 0.1 + 0.2 == 0.3 in D입니까? (0) | 2020.10.19 |
OpenCV / Python에서 카메라 매개 변수 설정 (0) | 2020.10.19 |