일주일이 넘어서야 보게 되었습니다.
엑셀이 안되서 다른쪽으로 일일이 수작업 ^^;; 을 해서 데이터를 넣었습니다.
악마오리님이 알려주신데로 했더니 정상적으로 들어갑니다.
기초가 부족해서 자꾸 이런부분을 놓치는거 같습니다.
도와주셔서 감사합니당 ^^ 주말 잘 보내세요~
악마오리 님이 쓰신 글 :
: 초기화가 안되고 계속 문장이 추가되서 그럽니다.
:
: 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;
: :
: : 저의 석두로는 해결이 잘 안됩니다. ㅠ.ㅠ
|