A provider-specific error occurred 에러

by 유니콘 posted Oct 26, 2010

VB 6.0 환경에서 OLEDB 로 프로그래밍을 하고 있는 사람입니다

 

테이블에 레코드가 1600개 정도 있는데 이를 불러와서 데이터리포트에 연동을 할때 에러가 납니다

 

에러는 첨부한 파일과 같구요.  여러가지 테스트를 해보니 커서 타입에 따라 증상이 조금씩 틀립니다

 

큐브리드는 MS-SQL 과 다르게 커서위치를 항상 서버에 두어야 하더군요

 

            Set Rs = New ADODB.Recordset
            Rs.CursorLocation = adUseServer

 

이렇게요.    첨부한 파일과 같은 에러는 커서 타입이 adOpenForwardOnly 일때와, adOpenDynamic 일때 발생합니다

adOpenKeyset  일때와 adOpenStatic 일때는 해당에러가 발생하지 않으나 ORDER BY 한 정렬값이 이상하게 틀어진채로

보여집니다.

adOpenForwardOnly 일때와, adOpenDynamic 일때 에러가 발생하는 창을 무시하면, 정렬도 모두 정상적으로 화면에

보여집니다.

 

 

위 문제와 별개로, 타입이 adOpenForwardOnly 일때와, adOpenDynamic 일때 해당 레코드수를   MsgBox Rs.RecordCount

라고 찍어보면,  값이 -1 로 나옵니다

 

adOpenKeyset  일때와 adOpenStatic 일때는 값이 256으로 나옵니다  데이터는 1630 개입니다

 

DB는 XP 32BIT 에 3.0 정식으로 깔려 있습니다 DB 생성은 모두 매니저에서 합니다

VB 는 6.0 SP6  입니다

 

MS-SQL 일때는 아무 문제 없었는데 큐브리드로 작업하니까 머리가 많이 빠지는거 같습니다 ㅠㅠ

이번에 VB로 플젝 하면서 느끼는건데, 큐브리드는 웹용으로 최적화된 DB 가 아닌가 생각해 봅니다

응용 프로그램으로 건드릴려니까 정말 힘드네요 ㅠㅠ

 

저는 담배를 안피는데, 속이 타서 커피 종이컵수만 쌓여가네요   도와주십시오 ㅠㅠ

 


Articles