Q&A

  • 쿼리를 몇개가지 오픈할 수 있습니까?


쿼리에 대한 질문입니다.

쿼리가 메모리를 잡아 먹나요?

제가 하나의 폼에서 읽어와야 할 데이터들이 많아서, 쿼리문이 상당히 길어졌고,

그리고 쿼리를 3개 정도까지 오픈을 했습니다.

그랬더니, general SQL Error 가 발생하더군요.

지금은 DB2를 ODBC를 통해 연결했습니다.

쿼리를 많이 오픈하면 이런 현상이 발생하나요?

dBMS의 메모리를 잡아 먹는 건가요?

그럼 이렇게 많은 데이터를 읽어 와야 할 경우에는 어떻게 하나요..

한번 읽어오고, 로컬에, 예를 들어 스트링 리스트 같은 것에, 저장을 하고 다시 데이터를 읽고,..

이런식으로 작업을 해야하나요?



조언 부탁드립니다.

3  COMMENTS
  • Profile
    이희정 2001.08.17 01:58
    석 wrote:

    >

    > 쿼리에 대한 질문입니다.

    > 쿼리가 메모리를 잡아 먹나요?

    > 제가 하나의 폼에서 읽어와야 할 데이터들이 많아서, 쿼리문이 상당히 길어졌고,

    > 그리고 쿼리를 3개 정도까지 오픈을 했습니다.

    > 그랬더니, general SQL Error 가 발생하더군요.

    > 지금은 DB2를 ODBC를 통해 연결했습니다.

    > 쿼리를 많이 오픈하면 이런 현상이 발생하나요?

    > dBMS의 메모리를 잡아 먹는 건가요?

    > 그럼 이렇게 많은 데이터를 읽어 와야 할 경우에는 어떻게 하나요..

    > 한번 읽어오고, 로컬에, 예를 들어 스트링 리스트 같은 것에, 저장을 하고 다시 데이터를 읽고,..

    > 이런식으로 작업을 해야하나요?

    >

    > 조언 부탁드립니다.





    Query를 몇개 Open하든 그런 식의 에러는 나지 않습니다.(제가 알기로는...)



    그런 식의 에러가 발생했다면.. 아마도 SQL문제로 생각되는군요.



    대신 Query로 가져오는 필드의 숫자가 너무 많은 경우(예를 들어 100개를 넘어간다든지..하는) 에러가 나기도 하더군요.

  • Profile
    2001.08.17 02:34
    이희정 wrote:

    > 석 wrote:

    > >

    > > 쿼리에 대한 질문입니다.

    > > 쿼리가 메모리를 잡아 먹나요?

    > > 제가 하나의 폼에서 읽어와야 할 데이터들이 많아서, 쿼리문이 상당히 길어졌고,

    > > 그리고 쿼리를 3개 정도까지 오픈을 했습니다.

    > > 그랬더니, general SQL Error 가 발생하더군요.

    > > 지금은 DB2를 ODBC를 통해 연결했습니다.

    > > 쿼리를 많이 오픈하면 이런 현상이 발생하나요?

    > > dBMS의 메모리를 잡아 먹는 건가요?

    > > 그럼 이렇게 많은 데이터를 읽어 와야 할 경우에는 어떻게 하나요..

    > > 한번 읽어오고, 로컬에, 예를 들어 스트링 리스트 같은 것에, 저장을 하고 다시 데이터를 읽고,..

    > > 이런식으로 작업을 해야하나요?

    > >

    > > 조언 부탁드립니다.

    >

    >

    > Query를 몇개 Open하든 그런 식의 에러는 나지 않습니다.(제가 알기로는...)

    >

    > 그런 식의 에러가 발생했다면.. 아마도 SQL문제로 생각되는군요.

    >

    > 대신 Query로 가져오는 필드의 숫자가 너무 많은 경우(예를 들어 100개를 넘어간다든지..하는) 에러가 나기도 하더군요.



    글세, 그런데, PageControl.TabSheet를 사용해서 네개의 페이지가 있고, 폼에는 8개 정도의 쿼리가 있습니다.

    formcreate시에 8개를 모두 오픈을 하니 General SQL Error가 발생하길래, ActivePage에 관련한 쿼리만 오픈을 하니, 정상 동작을 하더군요,

    그러나 이것 도역시 순차적으로 한페이지씩 오픈을 해 나가면, 3번재 정도 페이지에서는 General SQL Error가 발생을 해버려요.



    개별적으로는 정상 동작하는 SQL이 많은 쿼리를 오픈을 하면 General SQL Error를 발생시키니.. 허참 이걸 어떻게 받아들여야 할지 난감하군요...





  • Profile
    ^-_-^ 2001.08.17 22:32
    yo`



    general SQL Error 은 희정님의 말씀대로 sql문이 잘못되었을때 나타납니다.

    잘 살펴보시길...어딘가 구문이 잘못되었을것입니다.



    쿼리(동시에 하든 안하든)의 한계가 몇개까지인지는 모르겟습니다만, 3개정도

    에서 한계가 오지는 않습니다. ^^''



    희정님의 말씀대로 테이블의 필드수가 어느정도 이상되면 에러가 발생되기도 하나

    다른 메세지가 나타날것입니다.



    try..except 문으로 감싸서 exception 메세지를 함 보세요!! 보다 정확한 에러

    메세지를 보시면 어디서 잘못되었는지 알수 있을것입니다.



    그럼...휘리리릭~



    bLue bLood.



    석 wrote:

    > 이희정 wrote:

    > > 석 wrote:

    > > >

    > > > 쿼리에 대한 질문입니다.

    > > > 쿼리가 메모리를 잡아 먹나요?

    > > > 제가 하나의 폼에서 읽어와야 할 데이터들이 많아서, 쿼리문이 상당히 길어졌고,

    > > > 그리고 쿼리를 3개 정도까지 오픈을 했습니다.

    > > > 그랬더니, general SQL Error 가 발생하더군요.

    > > > 지금은 DB2를 ODBC를 통해 연결했습니다.

    > > > 쿼리를 많이 오픈하면 이런 현상이 발생하나요?

    > > > dBMS의 메모리를 잡아 먹는 건가요?

    > > > 그럼 이렇게 많은 데이터를 읽어 와야 할 경우에는 어떻게 하나요..

    > > > 한번 읽어오고, 로컬에, 예를 들어 스트링 리스트 같은 것에, 저장을 하고 다시 데이터를 읽고,..

    > > > 이런식으로 작업을 해야하나요?

    > > >

    > > > 조언 부탁드립니다.

    > >

    > >

    > > Query를 몇개 Open하든 그런 식의 에러는 나지 않습니다.(제가 알기로는...)

    > >

    > > 그런 식의 에러가 발생했다면.. 아마도 SQL문제로 생각되는군요.

    > >

    > > 대신 Query로 가져오는 필드의 숫자가 너무 많은 경우(예를 들어 100개를 넘어간다든지..하는) 에러가 나기도 하더군요.

    >

    > 글세, 그런데, PageControl.TabSheet를 사용해서 네개의 페이지가 있고, 폼에는 8개 정도의 쿼리가 있습니다.

    > formcreate시에 8개를 모두 오픈을 하니 General SQL Error가 발생하길래, ActivePage에 관련한 쿼리만 오픈을 하니, 정상 동작을 하더군요,

    > 그러나 이것 도역시 순차적으로 한페이지씩 오픈을 해 나가면, 3번재 정도 페이지에서는 General SQL Error가 발생을 해버려요.

    >

    > 개별적으로는 정상 동작하는 SQL이 많은 쿼리를 오픈을 하면 General SQL Error를 발생시키니.. 허참 이걸 어떻게 받아들여야 할지 난감하군요...

    >

    >