참고로 DB는 Oracle를 쓰고염.. 진짜루 뭐가 잘못됐나 모르겠네요..
로직은 이상없는것 같거든요.. 한번 실행하면 업데이트 되는것 같은데
다시 조회 하면 안돼 있어요 .. commit이 안먹어요..
그리고 아래 아래 글 리플 단 님대로 한칸씩 띄웠는데도 안되네요..
브래이크 걸어서 실행하면 제일 아래   if DM.IsOracle then DM.DB.Commit;
이 부분이 분명 걸치는데도 왜 commit 이 안되는건지..
고수님들 도와줘염..ㅠ.ㅠ
procedure TfrmProd_81.btnUpdateClick(Sender: TObject);
begin
  Screen.Cursor := crHourglass;
  if DM.IsOracle then DM.DB.StartTranSaction;
  with DM.Query2 do begin
    Close;
    SQL.Clear;
    SQL.Add('UPDATE T_QTY');
    SQL.Add('SET CHULDATE = null, ');
    SQL.Add('CHULTIME = null ');
    SQL.Add('WHERE FACTORY = :WFACTORY ');
    SQL.Add('AND   HOGI    = :WHOGI ');
    SQL.Add('AND   PRDATE  = :WPRDATE ');
    SQL.Add('AND   SEQ     = :WSEQ ');
    ParamByName('WFACTORY').AsString := Trim(Copy(cboSaup.Text,1,6));
    ParamByName('WHOGI').AsString    := Trim(Copy(cboHogi.Text,1,6));
    ParamByName('WPRDATE').AsString  := FormatDateTime('yyyymmdd',dtpYmd.Date);
    ParamByName('WSEQ').AsString     := mskSeq.Text;
    try
      DM.Query2.ExecSql;
    except
      on Err : EDatabaseError do  {저장실패}
        begin
          if DM.IsOracle then DM.DB.Rollback;
          ShowMessage(Err.Message);
          DM.Query2.Close;
          Screen.Cursor := crArrow;
          Exit;
        end;
    end;
  end;
  if DM.IsOracle then DM.DB.Commit;
end;
			 
	
	
    
    
	
	
    
    
    
if not DM.DB.inTransection then DM.DB.StartTranSaction;
일케 해보시져..^^
롤백은..
if DM.DB.inTransection then DM.DB.RollBack;
커밋은..
if DM.DB.inTransection then DM.DB.Commit;