Q&A

  • SQL로 오라클 DB를 PRADOX로 백업...??
안녕하세요 델가족 여러분



서버에 있는 오라클디비를 SQL로 읽어 그 내용을 그대로 파라독스디비로 백업을 받고자

하는데...

아래처럼 구현하면 될 것도 같은데 잘 안되네요...



var tindex : integer;

with SQLtraffic do begin //서버에 있는 오라클디비를 읽음

close;

sql.clear;

sql.add('select * from Tastdb');

open;

while not eof do begin

tindex := 0;

for tindex := 0 to fieldcount do begin //SQLtraffic 의 필드갯수

with SQLtra do begin

close;

sql.clear;

sql.add('Insert into testdb2'); //백업대상 디비

//아래구문이 될것도 같은데 안됩니다.

//파라독스디비 첫번째 필드에 오라클디비 첫번째 값을 대입

//이후 for문에의해 두번....세번째필드...

fields[tindex] := SQLtraffic.Fields[tindex];

end;

end;

SQLtra.ExecSQL;

next;

end;

end;



고수님들 위의 구문은 될 수 없는 구문인가요?

1  COMMENTS
  • Profile
    ^-_-^ 2001.06.29 02:45
    yo`



    흠...일단 디비종류는 별 차이가 없고요..

    (어떤디비에서 어떤디비로 가느냐는 다 거기서 거기인거죠..^^;;)



    일단 님의 소스에서는 insert 구문에 문제가 있는거 같습니다.



    > sql.add('Insert into testdb2'); //백업대상 디비

    > //아래구문이 될것도 같은데 안됩니다.

    > //파라독스디비 첫번째 필드에 오라클디비 첫번째 값을 대입

    > //이후 for문에의해 두번....세번째필드...

    > fields[tindex] := SQLtraffic.Fields[tindex];



    insert in tablename (fieldlist) values (valuelist)



    이런식으로 sql구문을 만드셔야겟죠...

    필드리스트나 값들을 구하는건 어렵지 않겟죠 ^^''

    (간단한 방법은 어차피 sql구문과 필드구조가 같으면 먼저 sql문을 작성해

    놓고...값만은 param으로 넘기면 깔끔해지죠...)



    글쿠...



    > for tindex := 0 to fieldcount do begin //SQLtraffic 의 필드갯수



    여기서 fieldcount-1 로 해줘야 할껄여?? (가물가물하네여 ^^'')



    그럼...휘리리릭~



    bLue bLood.



    초보 wrote:

    > 안녕하세요 델가족 여러분

    >

    > 서버에 있는 오라클디비를 SQL로 읽어 그 내용을 그대로 파라독스디비로 백업을 받고자

    > 하는데...

    > 아래처럼 구현하면 될 것도 같은데 잘 안되네요...

    >

    > var tindex : integer;

    > with SQLtraffic do begin //서버에 있는 오라클디비를 읽음

    > close;

    > sql.clear;

    > sql.add('select * from Tastdb');

    > open;

    > while not eof do begin

    > tindex := 0;

    > for tindex := 0 to fieldcount do begin //SQLtraffic 의 필드갯수

    > with SQLtra do begin

    > close;

    > sql.clear;

    > sql.add('Insert into testdb2'); //백업대상 디비

    > //아래구문이 될것도 같은데 안됩니다.

    > //파라독스디비 첫번째 필드에 오라클디비 첫번째 값을 대입

    > //이후 for문에의해 두번....세번째필드...

    > fields[tindex] := SQLtraffic.Fields[tindex];

    > end;

    > end;

    > SQLtra.ExecSQL;

    > next;

    > end;

    > end;

    >

    > 고수님들 위의 구문은 될 수 없는 구문인가요?