| 
 
초기화가 안되고 계속 문장이 추가되서 그럽니다.
 
  IBQuery.SQL.Clear; 문장 추가해 주세요
 
 유승현 님이 쓰신 글 :
 : 안녕하세요. 파이어버드 시작2일째인데 벽에 또 부딪쳤습니다.
 : 하루만에 다시 또 에러가 발생해서 가르침을 받고자 질문를 올립니다.
 : 
 : 요점은 엑셀파일을 불러와서 그것을 DB에 입력하고자 하는건데요.
 : 스트링그리드에 뿌린 내용을 For문을 돌려서 입력할 때 
 : 한바퀴 돌고 2번째로 인서트 값을 넣을때 에러가 납니다.
 : 
 : 'Dynamic SQL Error SQL error code = -104
 : Token unknown -line 5, char2
 : Insert'
 : 
 : 아래는 소스부분입니다.
 : 
 :   cnt := 0;
 :   for i := 1 to StringGrid1.RowCount -1 do
 :   begin
 :     IBQuery.SQL.Add(' INSERT INTO T_CODE  ');
 :     IBQuery.SQL.Add(' (CODE, CNO, KN, EN) ');
 :     IBQuery.SQL.Add(' VALUES              ');
 :     IBQuery.SQL.Add(' (:P_CODE, :P_CNO, :P_KN, :P_EN) ');
 :     IBQuery.Prepare; //한바퀴돌고 2번째 로우넣을때 에러
 :     IBQuery.ParamByName('P_CODE').AsString := StringGrid1.Cells[0,i];
 :     IBQuery.ParamByName('P_CNO').AsString := StringGrid1.Cells[1,i];
 :     IBQuery.ParamByName('P_KN').AsString := StringGrid1.Cells[2,i];
 :     IBQuery.ParamByName('P_EN').AsString := StringGrid1.Cells[3,i];
 :     try
 :       IBQuery.ExecSQL;
 :       //itTrans.Commit;
 :       cnt := cnt + 1;
 :       except on E: Exception do
 :       begin
 :         //IBQuery.Transaction.Rollback;
 :         itTrans.Rollback;
 :         MessageDlg('코드입력중 에러발생!' + E.Message, mtInformation, [mbOK], 0);
 :         IBQuery.Close;
 :         IBQuery.SQL.Clear;
 :         Exit;
 :       end;//begin
 :     end;//try
 :   end;//for i := 1 to StringGrid1.RowCount -1 do
 : 
 :   itTrans.Commit;
 :   iqSql.Close;
 :   iqsql.SQL.Clear;
 : 
 : 저의 석두로는 해결이 잘 안됩니다. ㅠ.ㅠ
 
    |