请教这样的插入语句错在哪里阿?(100分)

  • 主题发起人 主题发起人 dreameast-1
  • 开始时间 开始时间
D

dreameast-1

Unregistered / Unconfirmed
GUEST, unregistred user!
我用adoquery组件向access数据库表中插入记录,下面的语句总提示插入语句(insert)错误,大家帮我看看到底哪里错了!!!!
with aqsldmain do
begin
close;
Sql.Clear ;
Sql.Add('Insert sld_main (inno,indate,stockperson,isyuan,moldcode,moldname,size,yuansum,bansum,chengsum,wastersum,auditingperson,isauditing,auditingdate,memo) ');
sql.Add('values(:a,:b,:c,:d,:e,:f,:g,:h,:i,:j,:k,:l,:m,:n,:o)');
Parameters[0].value:=trim(inno.Text);
Parameters[1].value:=indate.Date;
Parameters[2].value:=trim(inperson.Text) ;
Parameters[3].value:=sfyl.checked;
Parameters[4].value:=trim(code.Text) ;
Parameters[5].value:=trim(mname.Text) ;
Parameters[6].value:=trim(size.Text) ;
Parameters[7].value:=strtofloat(trim(ysum.Text)) ;
Parameters[8].value:=strtofloat(trim(Bsum.Text)) ;
Parameters[9].value:=strtofloat(trim(Csum.Text)) ;
Parameters[10].value:=strtofloat(trim(wsum.Text)) ;
Parameters[11].value:='' ;
Parameters[12].value:=false;
Parameters[13].value:=formatdatetime('yyyy-mm-dd',date);
Parameters[14].value:=trim(memo.text);
ExecSql;
end;
 
变量数目必须相同。
如果说插入错误。就是类型的问题。
建议formatdatetime('yyyy-mm-dd',date);
该一下,因为这个是字符型号,改成日期的。比如直接使用date
 
变量数目必须相同?
你是说a---o的数目必须和Parameters[0]数目一样多么?
还是说'values(:a,:b,:c,:d,:e,:f,:g,:h,:i,:j,:k,:l,:m,:n,:o)中的变量数目必须和access数据库表中的字段数目必须一致。
对了我还想了解一下,sql的插入语句中变量数少于access数据库表中的字段数目能否插入一个新的记录阿?????谢谢大家了,我是个初学者,正在做毕业设计,马上就要答辩了
请大家费心了!!!
 
要保证字段的个数的统一和字段类型的统一性,否则会报错的。
 
上面的代码主要是缺了一个 INTO 才总报错的
 
多人接受答案了。
 
后退
顶部