Q&A

  • BDE오 오라클서버연결후 insert하는데 잘안되요
//while  또는 for문을 돌리면서 저장    
  sqls := 'insert into TB_SPC_DATA (PLANT_CD, WO_DT, WO_TM, LINE_CD'+
                         ',CAR_TYPE, PART_NO, PART_NM, WO_NO, XVALUE, CUST_CD, UPDATE_DT)'+
                ' values ('''+e_Plant.Text+''','''+E_Dt.TExt+''', '''+E_TM.TExt+
                          ''', '''+ E_Line.Text+''','''+E_ctype.text+''','''+ E_no.Text+
                          ''','''+E_nm.text+''','''+E_wno.text+''','''+E_value.Text+
                          ''','''+E_cd.Text+''','''+ nowDate+''')';

      
        OSaveQry.Close;
        OSaveQry.SQL.Clear;
        OSaveQry.SQL.Add( sqls );
        try
          OSaveQry.ExecSQL;

        except on DBError:EDBEngineError do
           for i:=0 to DBError.ErrorCount - 1 do
           ShowMessage( DBError.Errors[i].Message );
        end;

insert 내용이 이런데요 프로그램실행하면서 처음엔 저장이 되는데 그다음엔저장이안되요
1분마다 검색해서 조건에 맞는거 오라클DB로 저장하고있는거예요
뭐가 문제일까요
1  COMMENTS
  • Profile
    정경철 2009.10.01 16:53
    이 소스만 가지고는 모르겠네요...!!
    위 소스 타이핑 하느라 고생좀 했겠는데요.
    델파이에서 지원하는 파아미터를 이용하면 편리합니다.
    어느 책에선가 파라미터를 사용하면 좀더 빠르다고
    하더 군요..

    OSaveQry.Close;
    OSaveQry.SQL.Clear;
    OSaveQry.SQL.Add('insert into TB_SPC_DATA (PLANT_CD, WO_DT, WO_TM, LINE_CD');
    OSaveQry.SQL.Add(,CAR_TYPE, PART_NO, PART_NM, WO_NO, XVALUE, CUST_CD, UPDATE_DT)');
    OSaveQry.SQL.Add(' values (:P0, :P1, :P2, :P3, :P4, :P5, :P6, :P7, :P8, :P9, :P10, :P11)');

    OSaveQry.Params[0].AsString := e_Plant.Text;
    OSaveQry.Params[1].AsString := E_Dt.TExt;
    .......
    .......
    OSaveQry.ExecSQL;