Q&A

  • MDB테이블에서 IntebaseDB로 레코드 복사?
초심자입니다... 또 질문을 올리게 되네요
accessDB의 가족자료D란 테이블에서 intebaseDB ga란 테이블로 레코드들을 복사할려고하려고 합니다. 허접한 소스를 보면

begin

query2.SQL.Clear;
query2.SQL.Text := 'select * from 가족자료D'; <-가족자료D table에서 레코드를 읽고
query2.Open;

datasource2.DataSet.Open;<-데이터셋을열고
while not datasource2.DataSet.Eof do<-데이터셋이 공백이 아닐때까지insert함
begin

datasource2.DataSet.First; <-데이터셋의 처음을 읽고
query3.SQL.Clear;
query3.SQL.Text := 'insert into fa (cn) values(datasource2.DataSet.Fields(챠트번호).asString)'; <-인서트한다
query3.ExecSQL; <-쿼리 실행
datasource2.dataset.Next; <-다음 레코드로 옮긴다
end;

end;

이런식으로 AccessDB의 table을 intebaseDB table로 옮길려고 하는데요
에러가 뜨네요
몇가지는 여기 질문을 통해 해결했는데요 또 문제가 생기네요
에러는 Project Projet1.exe raised exception class EDBEngineError with message 'Invalid use of keyword. Token:(챠트번호).asString) 이렇게 뜹니다 뭐가 잘못된건지 알수가 없네요 길을 좀 보여주세요 ^^
1  COMMENTS
  • Profile
    최용일 2006.04.20 21:30
    안녕하세요. 최용일입니다.

    뭔가 상당히 복잡하게 되어 있네요. Query2로 조회하고 datasource2로 루프를 도는군요. 두개가 연결되어 있나 보군요. 일반적으로 Query2로 조회했으면 루프도 Query2로 도는데...

    Query3의 SQL이 잘못되어 있네요... 변수를 쓰셔야 하는데 그냥 문자열 묶으셨군요...

    query3.SQL.Text := 'insert into fa (cn) values(' + datasource2.DataSet.Fields(챠트번호).asString + ')';

    ^^ 항상 즐코하세요...