Q&A

  • invalid blob handle in record buffer....[급구]
음..제가 TQuery를 이용하여 Oracle의 내용을 조회하여 DBGrid에 나타나도록 했습니다.

그중의 한 필드가 varchar2(4000)인데 DBGrid에는 [MEMO]라고만 나오고 표시가 안되어

DBGrid의 DrawDataCell 이벤트를 실행시켰더니....(이 때 max_charsize를 30으로 주었습니다. 실제 sql*plus에서 조회되는 값은 한글로 20자 내외거든요...)

실행파일에 raised error가 나타나면서 Invalid blob handle in record buffer라는 메세지가 뜨는데요...

이 경우는 어떻게 처리해야 하는지...고수님들의 조언을 부탁합니다...

꾸벅....~~~ please....~~~



4  COMMENTS
  • Profile
    안재현 1999.11.19 21:42
    suezou wrote:

    > 음..제가 TQuery를 이용하여 Oracle의 내용을 조회하여 DBGrid에 나타나도록 했습니다.

    > 그중의 한 필드가 varchar2(4000)인데 DBGrid에는 [MEMO]라고만 나오고 표시가 안되어

    > DBGrid의 DrawDataCell 이벤트를 실행시켰더니....(이 때 max_charsize를 30으로 주었습니다. 실제 sql*plus에서 조회되는 값은 한글로 20자 내외거든요...)

    > 실행파일에 raised error가 나타나면서 Invalid blob handle in record buffer라는 메세지가 뜨는데요...

    > 이 경우는 어떻게 처리해야 하는지...고수님들의 조언을 부탁합니다...

    > 꾸벅....~~~ please....~~~

    >

    정확한건 잘모르겠지만..

    그 에러는 DBE에 BLOB SIZE 와 BLOBS TO CACHE 하고 상관이 있는 것 같더군요.

    그 수치를 늘려보세요.

  • Profile
    김장섭 1999.11.19 22:03
    안재현 wrote:

    > suezou wrote:

    > > 음..제가 TQuery를 이용하여 Oracle의 내용을 조회하여 DBGrid에 나타나도록 했습니다.

    > > 그중의 한 필드가 varchar2(4000)인데 DBGrid에는 [MEMO]라고만 나오고 표시가 안되어

    > > DBGrid의 DrawDataCell 이벤트를 실행시켰더니....(이 때 max_charsize를 30으로 주었습니다. 실제 sql*plus에서 조회되는 값은 한글로 20자 내외거든요...)

    > > 실행파일에 raised error가 나타나면서 Invalid blob handle in record buffer라는 메세지가 뜨는데요...

    > > 이 경우는 어떻게 처리해야 하는지...고수님들의 조언을 부탁합니다...

    > > 꾸벅....~~~ please....~~~

    > >

    > 정확한건 잘모르겠지만..

    > 그 에러는 DBE에 BLOB SIZE 와 BLOBS TO CACHE 하고 상관이 있는 것 같더군요.

    > 그 수치를 늘려보세요.

    안녕하세요, 오라클을 사용하고 실제 표현되어지는 값이 30자리 내외라면

    오라클함수인 SubStr을 사용해서 4000바이트 짜리 컬럼 사이즈를 조절해 보세요. SQL문을 작성할 때

    Select SubStr(FieldName,1,30) FieldName_Alias from TABLENAME

    이렇게 하시면 DBGrid에 잘 나올것 같습니다.

  • Profile
    suezou 1999.11.19 22:14
    김장섭 wrote:

    > 안재현 wrote:

    > > suezou wrote:

    > > > 음..제가 TQuery를 이용하여 Oracle의 내용을 조회하여 DBGrid에 나타나도록 했습니다.

    > > > 그중의 한 필드가 varchar2(4000)인데 DBGrid에는 [MEMO]라고만 나오고 표시가 안되어

    > > > DBGrid의 DrawDataCell 이벤트를 실행시켰더니....(이 때 max_charsize를 30으로 주었습니다. 실제 sql*plus에서 조회되는 값은 한글로 20자 내외거든요...)

    > > > 실행파일에 raised error가 나타나면서 Invalid blob handle in record buffer라는 메세지가 뜨는데요...

    > > > 이 경우는 어떻게 처리해야 하는지...고수님들의 조언을 부탁합니다...

    > > > 꾸벅....~~~ please....~~~

    > > >

    > > 정확한건 잘모르겠지만..

    > > 그 에러는 DBE에 BLOB SIZE 와 BLOBS TO CACHE 하고 상관이 있는 것 같더군요.

    > > 그 수치를 늘려보세요.

    > 안녕하세요, 오라클을 사용하고 실제 표현되어지는 값이 30자리 내외라면

    > 오라클함수인 SubStr을 사용해서 4000바이트 짜리 컬럼 사이즈를 조절해 보세요. SQL문을 작성할 때

    > Select SubStr(FieldName,1,30) FieldName_Alias from TABLENAME

    > 이렇게 하시면 DBGrid에 잘 나올것 같습니다.

    음냐..지금 제가 사용한 방법은 trim을 이용한 것인데..이것도 역시 같은 에러가 나오더군요..위의 방법을 해보고 결과를 올려놓죠...답변을 해주셔서 감사합니다..

    지금 테스트를 해보죠....꾸벅...



  • Profile
    suezou 1999.11.19 22:41
    suezou wrote:

    > 김장섭 wrote:

    > > 안재현 wrote:

    > > > suezou wrote:

    > > > > 음..제가 TQuery를 이용하여 Oracle의 내용을 조회하여 DBGrid에 나타나도록 했습니다.

    > > > > 그중의 한 필드가 varchar2(4000)인데 DBGrid에는 [MEMO]라고만 나오고 표시가 안되어

    > > > > DBGrid의 DrawDataCell 이벤트를 실행시켰더니....(이 때 max_charsize를 30으로 주었습니다. 실제 sql*plus에서 조회되는 값은 한글로 20자 내외거든요...)

    > > > > 실행파일에 raised error가 나타나면서 Invalid blob handle in record buffer라는 메세지가 뜨는데요...

    > > > > 이 경우는 어떻게 처리해야 하는지...고수님들의 조언을 부탁합니다...

    > > > > 꾸벅....~~~ please....~~~

    > > > >

    > > > 정확한건 잘모르겠지만..

    > > > 그 에러는 DBE에 BLOB SIZE 와 BLOBS TO CACHE 하고 상관이 있는 것 같더군요.

    > > > 그 수치를 늘려보세요.

    > > 안녕하세요, 오라클을 사용하고 실제 표현되어지는 값이 30자리 내외라면

    > > 오라클함수인 SubStr을 사용해서 4000바이트 짜리 컬럼 사이즈를 조절해 보세요. SQL문을 작성할 때

    > > Select SubStr(FieldName,1,30) FieldName_Alias from TABLENAME

    > > 이렇게 하시면 DBGrid에 잘 나올것 같습니다.

    > 음냐..지금 제가 사용한 방법은 trim을 이용한 것인데..이것도 역시 같은 에러가 나오더군요..위의 방법을 해보고 결과를 올려놓죠...답변을 해주셔서 감사합니다..

    > 지금 테스트를 해보죠....꾸벅...

    >



    음냐....BDE의 size를 조정하니 에러가 안뜨는군요....감사합니다..꾸벅~~~~..감사합니다..하하...