Q&A

  • DBEdit 와 Query사용시 업테이트 문제
먼저 커리를 사용하여 조건별 DBEdit와 출력합니다.

그리고 나서 업데이트를 실행하는 프로시저인데 계속 에러가 납니다.

고수님들 검토 부탁합니다.



var

a1, a2, a3, a4 : integer;



begin



a1 := strtoint(DBEdit8.Text);

a2 := strtoint(DBEdit9.Text);

a3 := strtoint(DBEdit10.Text);

a4 := strtoint(DBEdit11.Text);



With DM4.Query4 do begin

CLose;

SQL.Clear();

SQL.Add('Update 사원별급여현황 set');

SQL.Add(' jipay1 = a1,'); // 여기서 에러가 납니다.///////////////////

SQL.Add(' jipay2 = a2,');

SQL.Add(' jipay3 = a3,');

SQL.Add(' jipay4 = a4');

SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

if ComboBox2.Text = '상여' then

SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

ExecSQL;

end;

end;

3  COMMENTS
  • Profile
    써니 2001.03.01 05:05
    김범수 wrote:

    > 먼저 커리를 사용하여 조건별 DBEdit와 출력합니다.

    > 그리고 나서 업데이트를 실행하는 프로시저인데 계속 에러가 납니다.

    > 고수님들 검토 부탁합니다.

    >

    > var

    > a1, a2, a3, a4 : integer;

    >

    > begin

    >

    > a1 := strtoint(DBEdit8.Text);

    > a2 := strtoint(DBEdit9.Text);

    > a3 := strtoint(DBEdit10.Text);

    > a4 := strtoint(DBEdit11.Text);

    >

    > With DM4.Query4 do begin

    > CLose;

    > SQL.Clear();

    > SQL.Add('Update 사원별급여현황 set');

    > SQL.Add(' jipay1 = a1,'); // 여기서 에러가 납니다.///////////////////

    > SQL.Add(' jipay2 = a2,');

    > SQL.Add(' jipay3 = a3,');

    > SQL.Add(' jipay4 = a4');

    > SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

    > SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

    > SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

    > if ComboBox2.Text = '상여' then

    > SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

    > ExecSQL;

    > end;

    > end;





    위의 SQL문에서 a1을 변수로 읽지못합니다.

    변수로 읽을수 있게 아래와 같이 코딩해보세요.

    With DM4.Query4 do begin

    CLose;

    SQL.Clear();

    SQL.Add('Update 사원별급여현황 set');

    SQL.Add(' jipay1 = "'+a1+'",');

    SQL.Add(' jipay2 = "'+a2+'",');

    SQL.Add(' jipay3 = "'+a3+'",');

    SQL.Add(' jipay4 = "'+a4+'"');

    SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

    SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

    SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

    if ComboBox2.Text = '상여' then

    SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

    ExecSQL;

    end;

    end;

  • Profile
    델맨... 2001.02.28 21:53
    김범수 wrote:

    > 먼저 커리를 사용하여 조건별 DBEdit와 출력합니다.

    > 그리고 나서 업데이트를 실행하는 프로시저인데 계속 에러가 납니다.

    > 고수님들 검토 부탁합니다.

    >

    > var

    > a1, a2, a3, a4 : integer;

    >

    > begin

    >

    > a1 := strtoint(DBEdit8.Text);

    > a2 := strtoint(DBEdit9.Text);

    > a3 := strtoint(DBEdit10.Text);

    > a4 := strtoint(DBEdit11.Text);

    >

    > With DM4.Query4 do begin

    > CLose;

    > SQL.Clear();

    > SQL.Add('Update 사원별급여현황 set');

    > SQL.Add(' jipay1 = a1,'); // 여기서 에러가 납니다.///////////////////

    > SQL.Add(' jipay2 = a2,');

    > SQL.Add(' jipay3 = a3,');

    > SQL.Add(' jipay4 = a4');

    > SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

    > SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

    > SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

    > if ComboBox2.Text = '상여' then

    > SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

    > ExecSQL;

    > end;

    > end;





    Query문에서 Update하는 항목이 문자인것 같군요...

    SQL.Add('Update 사원별급여현황 set');

    SQL.Add(' jipay1 = "a1",'); =요렇게 해줘야 하지 않나요???

    SQL.Add(' jipay2 = "a2",');

    SQL.Add(' jipay3 = "a3",');

    SQL.Add(' jipay4 = "a4"');

    SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

    SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

    SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

    if ComboBox2.Text = '상여' then

    SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

    ExecSQL;



  • Profile
    김범수 2001.02.28 22:59
    SQL.Add(' jipay1 = "a1",');

    상기와 같이 코딩하면 a1이란 상수로 인식됨.....





    > Query문에서 Update하는 항목이 문자인것 같군요...

    > SQL.Add('Update 사원별급여현황 set');

    > SQL.Add(' jipay1 = "a1",'); =요렇게 해줘야 하지 않나요???

    > SQL.Add(' jipay2 = "a2",'); (상기와 같이 코딩하면 a1이란

    상수로 인식됨)

    > SQL.Add(' jipay3 = "a3",');

    > SQL.Add(' jipay4 = "a4"');

    > SQL.Add(' Where jakyear = "'+SpinEdit5.Text+'"');

    > SQL.Add(' and jakmonth = "'+SpinEdit6.Text+'"');

    > SQL.Add(' and gubun = "'+ComboBox2.Text+'"');

    > if ComboBox2.Text = '상여' then

    > SQL.Add(' and jiday = "'+ComboBox3.Text+'"');

    > ExecSQL;

    >