Q&A

  • 파라독스 DB 와 MS-SQL DB 의 테이블을 조인하려고 하는데 가능한가요?
파라독스 DB 와 MS-SQL DB 의 테이블을 조인하려고 하는데

가능한가요?

가능하다면 방법좀 알려주세요.
3  COMMENTS
  • Profile
    김경록 2003.10.11 04:35
    가능합니다..

    물론,  Query 한방으로 해결된다는 전제하에서 말입니다.

    팁란에서 "이종쿼리"에 대해서 검색해 보세여..
    아마도 있을 겁니다..
    없다면, 화면 상단의 "예전의 질답 게시판으로 가기"를 클릭후 나타나는
    질답 게시판에서 "이종쿼리"로 조회를 해 보세여..
    아마도 있을 겁니다..
    본 기억이 있네여..

    간단히 예기하면,
    Database 컴포넌트 2개..
    각각의 databasename을 설정하구여..
    (database1:  paradox  db
      database1.databasename:   dbpara

      database2:  mssql db
      database2.databasename:  dbsql
    )
    alias도 설정하구여..



    query 컴포넌트에서 query하는 내용은 이렇습니다..
    예)  dbpara  :   paradox db
          dbsql  :   mssql db

    Query내용

    select a.필드, b.필드.....
      from 'dbpara.테이블명' a,
             'dbsql.테이블명' b
    where a.필드 = b.필드


    이정도 될겁니다..
    확인해 보시기 바랍니다..
    언젠가 프로젝트 수행할때 했던 적이 있었던거 같군여..
    물론 잘 되었다는 뜻입니다..
    에고..  답이 되었길 바랍니다..


    - 착한천사  김경록 -



  • Profile
    김지엽 2003.10.07 22:51
    직접적으로 Database 수준에서 조인하는 것은 불가능할 것입니다.
    아마도 MS-SQL DB의 특정한 데이터를 파라독스 DB의 내용으로 가공하거나, 또는 파라독스 DB의 내용으로 Query를 제한하기 위해서겠죠?

    제 짧은 경험상으로는 이럴 때 데이터의 성질에 따라 파라독스 DB에서 먼저 Select를 한 다음에 그것을 MS쪽 쿼리에 파라미터로 삽입하여 루프를 돌려 가져오거나 반대로 MS쪽 쿼리를 해 온 담에 파라독스 DB를 루프를 사용해서 돌리는 편이 훨씬 빠르게 반응할 수 있었던거 같구요.

    MS-SQL DB의 특정한 데이터를 파라독스 DB의 내용으로 가공하기 위해서는 전자의 방법이, 파라독스 DB의 내용으로 Query를 제한하기 위해서는 후자의 방법이 유용하지 않을까 하네요.

    굳이 조인을 하려면 Delphi의 객체상에서 묶어주어야 할텐데, 그렇게 좋은 성능을 보여주지는 않을 수도 있잖을까.. 합니다.

  • Profile
    물고기나라 2003.10.07 19:29


    같은 DB가 아님으로 불가능합니다.

    프로그램을 수정해서 한쪽 DB만 쓸 것을 권하지만 임시방편으로 꼭 해야한다면 방법은 여러겠지만 근본적으론 어느 한 쪽으로 컨버젼하면 되겠지요.

    테이블생성이나 데이타복사하는데는 문제 없죠. 그럼, 파라독스 테이블을 MS_SQL로 옮기다던지 MS_SQL 테이블을 파라독스 테이블로 옮겨서 조인하면 되겠네요.
    MS-SQL로 옮겨서 실행하는게 아무래도 낫겠죠. ^^

    혹시 자료량이 많다면 조인 해야할 파라독스 테이블을 조건절로 먼저 걸르고 난 다음 MS-SQL로 옮겨서 조인하는게 빠르겠네요. 필요하다면 키도 주시구요.