delphi UPDATE问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 17:20:20
输入数据更新为空,也不出错,晕死了
if data5.ado4.fieldbyname('上班工时').asstring='' then
with data5.ado4 do
begin
close;
sql.Clear;
sql.add(Format('Update gongzi Set 上班工时= %s,加班工时= %s,节假加班工时= %s,'+
'工资=%s, 加班工资=%s,节假加班工资=%s,其他/夜餐/退款=%s,应发工资=%s,'+
'保险=%s,房租/水电/伙食=%s,其他/厂服=%s,罚款=%s,应扣合计=%s,实发工资=%s,'+
'总底薪=%s,生活补助=%s,上班捕助=%s,加班补助=%s,节假加班补助=%s,'+
'实发生活补助=%s,该领取工资=%s Where ID= %d',[QuotedStr(LabelEdedit3.Text),QuotedStr(LabelEdedit2.Text),
QuotedStr(LabelEdedit5.Text),QuotedStr(LabelEdedit4.Text),QuotedStr(LabelEdedit1.Text),QuotedStr(LabelEdedit6.Text),
QuotedStr(LabelEdedit36.Text),QuotedStr(LabelEdedit10.Text),QuotedStr(LabelEdedit13.Text),
QuotedStr(LabelEdedit12.Text),QuotedStr(LabelEdedit14.Text),QuotedStr(LabelEdedit15.Text),
QuotedStr(LabelEdedit16.Text),QuotedStr(LabelEdedit18.Text),QuotedStr(LabelEdedit21.Text),
QuotedStr(LabelEdedit29.Text),QuotedStr(LabelEdedit20.Text),

加个断点在sql.add这个上面
看看sql语句是不是你想要的
可以拷出来放了数据库中执行下
看看是否可以

if data5.ado4.fieldbyname('上班工时').asstring='' 你看一看这句判断是否成立,有可能你的字段值是null(空值)而不是空字符串,而你的IF语句只是判断为空字符串时,