학습 프로그램의 상당 부분은 운영을 위해 데이터베이스에 연결되어야합니다. 여기 오류가 있습니다. 새로운 기술 채널의 편집자는 OLEDB를 사용하여 스토리지 프로세스에서 레코드 세트를 반환 할 수 없습니다. 관심있는 친구들은 자세한 내용을 배우기 위해 다음 기사로 이동합니다!
저장 절차에서 OLEDB 메소드로 레코드 세트를 반환 할 수없는 이유는 무엇입니까?
한 번 임시 테이블에서 작동하는 프로그램을 작성했습니다 (주요 기능은 각 범주의 상위 10 개 레코드를 검색하는 것입니다).
이 저장 프로 시저는 ODBC를 사용하여 데이터베이스에 연결할 때 정상이며 올바른 결과를 얻을 수 있습니다. 그러나 OLEDB 메소드를 사용하여 연결할 때 레코드 세트를 반환 할 수 없으며 작업이 레코드 세트로 돌아올 때 오류 메시지가 나타납니다.
adodb.recordset 오류 '800a0e78'
객체가 닫히면 응용 프로그램에서 요청한 작업은 허용되지 않습니다.
그것은 나를 당황하게 만들었다. 그 이유는 무엇입니까?
OLEDB와 ODBC 사이에 차이가 있기 때문입니다. 즉, ASP가 ODBC에서 레코드를 가져 오면 ODBC
또는 삽입으로 삽입하여 위치를 차지하지만 작업을 수행 할 수없는 일부 레코드 세트를 생성합니다. ASP가 OLEDB, OLEDB로 설정된 레코드를 가져 오면
이 레코드 세트는 필터링되지 않습니다. 따라서 저장된 절차에서 레코드 세트를 반환하고 싶지 않기 전에 설정 Nocount를 실행해야합니다.
저장된 절차는 레코드 세트를 반환 할 수 없습니다. 그리고 레코드 세트를 반환 할 때 먼저 SET NOCOUNT OFF를 실행해야합니다. 이런 식으로 문제가 해결 될 것입니다.
文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文文 �의 편집자