게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 저장프로시저의 반환값... |
---|
작성자: 송원석
작성일시: 2004-11-04 22:32,
조회수: 3,101
|
정말로 그렇네요. 저도 이런 경우가 있는지 모르고 있다가 말씀해주신 내용을 보고서 직접 테스트를 해 보았습니다. 그런데 정말 말씀하신 그대로의 결과가 나오네요. 지금까지 잠깐 테스트를 해봤는데 아직까지 해결책을 찾지는 못했습니다. 틈나는 대로 다른 방법을 찾아보고 다시 말씀을 드리도록 하겠습니다. ^_^;;;
먼저 조금이라도 문제 해결에 도움이 될까 싶어서 지금까지 알아낸 몇 가지 특징들에 대해서 설명을 드리겠습니다. 오류가 발생하는 경우 아예 Execute() 메소드로부터 리턴되는 개체 자체가 존재하지 않더군요. 즉 레코드셋이 Nothing 입니다. 따라서 당연히 데이터를 가져오는 것은 물론이거니와 모든 종류의 프로퍼티, 메소드들에 접근이 불가능하게 됩니다. 제 짐작에는 이런 동작의 근거가 되는 것이 저장 프로시저에서 호출되는 첫 번째 쿼리문이 아닌가 싶습니다. 즉 첫 번째 쿼리문을 보고 레코드셋을 만들지 여부를 결정하는게 아닐까하고 예상하고 있습니다. 왜냐하면 제가 시험삼아 아무런 의미도 없는 SELECT 쿼리문을 저장 프로시저의 맨 앞부분에 넣어봤더니 레코드셋이 정상적으로 리턴되더군요. 물론 이 경우에는 레코드셋 자체는 리턴되지만 저장 프로시저의 마지막 부분에서 리턴되는 데이터가 아닌 의미없는 SELECT 문의 데이터이기 때문에 실제로 소용은 없습니다. 혹시 다중 레코드셋이 리턴되고 NextRecordset() 메소드를 사용할 수 있다면 의미있는 결과를 얻을 수 있는 가능성이 있습니다만... 이 부분은 내일 출근해서 여유가 있을 때 한 번 테스트 해보려고 합니다. ^_^;; 그리고 외람된 말씀이지만 zziuni 님께서 기존에 사용하셨던 OUTPUT 인자를 사용하는 방법이 기술적으로는 훨씬 더 효율적인 방법입니다. 물론 저 역시도 편하기는 지금의 방법이 더 편하다고 생각합니다. 그러나 한 번 생각을 해 보세요. 기존의 OUTPUT 인자를 사용할 때는 단지 미리 선언해두었던 변수에 값이 할당되는 것일 뿐이지만, 지금과 같이 SELECT 를 사용하면 겨우 변수 하나를 받기 위해서 무거운 레코드셋 개체가 하나 만들어져야만 하지 않겠습니까? 어느 쪽이 더 효율적인 방법인지는 너무나도 명확하죠. 감사합니다. |
IP 주소: 61.84.83.153
|
전체 2,095 건의 게시물,
84 페이지로 구성된
ASP, ASP.NET, IIS & Script 게시판의
53 페이지입니다.
게시물 | ||||
---|---|---|---|---|
822 | 2004-11-16 | 4,560 | ||
821 | 2004-11-16 | 2,729 | ||
820 | 2004-11-16 | 2,569 | ||
819 | 2004-11-16 | 2,679 | ||
818 | 2004-11-16 | 2,716 | ||
817 | 2004-11-16 | 2,927 | ||
816 | 2004-11-14 | 2,799 | ||
815 |
re: 액티브X의 활용 2편 [2] |
2004-11-15 | 2,702 | |
814 | 2004-11-08 | 2,998 | ||
813 | 2004-11-08 | 2,639 | ||
812 |
저장프로시저의 반환값... [1] |
2004-11-04 | 3,815 | |
2004-11-04 | 3,101 | |||
810 | 2004-11-05 | 2,760 | ||
809 |
오마르 |
2004-11-05 | 926 | |
808 |
set nocount on [2] |
verve |
2004-11-12 | 892 |
807 |
오마르 |
2004-11-02 | 769 | |
806 | 2004-11-02 | 2,565 | ||
805 |
오마르 |
2004-11-04 | 722 | |
804 | 2004-11-04 | 2,869 | ||
802 |
오마르 |
2004-11-01 | 828 | |
801 | 2004-11-01 | 2,866 | ||
800 |
오마르 |
2004-10-28 | 875 | |
799 | 2004-10-28 | 2,904 | ||
798 |
오마르 |
2004-10-28 | 1,026 | |
797 | 2004-10-28 | 2,863 |