插入数据时报错“查询值的数目与目标字段中的数目不同”,求教! 在用ADOQUERY做插入记录是老是报这个错。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if(StrLen(PChar(EditNo.Text))=0) then ShowMessage('请输入网点编号') else begin //查询是否已经存在要添加的记录 ShowMessage(EditNo.Text); ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(selectsql+EditNoValue); ADOQuery1.OPen; selectnum:=ADOQuery1.RecordCount; end; //ShowMessage('!'); if selectnum>0 then begin ShowMessage('已经存在这条记录'); selectnum:=0; end else //添加记录 begin {ADOQuery1.Insert; ADOQuery1['brh_no']:=EditNoValue; ADOQuery1['brh_name']:=EditNameValue; ADOQuery1['brh_ip']:=EditIpValue; ADOQuery1['brh_type']:=EditTypeValue; ADOQuery1['brh_date']:=EditDateValue; ADOQuery1['brh_num']:=EditNumValue; ADOQuery1.Post; } ADOQuery1.Close; ADOQuerY1.SQL.Clear; ADOQuery1.SQL.Add(insertsql+EditNoValue+EditNameValue+EditIpValue+EditTypeValue+EditDateValue+EditNumValue+')'); ADOQuery1.Open; end; insertsql:='Insert Into brh_table Values('; 你用insert语句就不能用open(有返回数据集时才用),最后那句改成:ADOQuery1.ExecSQL; 把ADOQuery1.Open;改为ADOQuery1.ExecSQL;还是同样的错! 只是这一段代码有错 ADOQuery1.Close; ADOQuerY1.SQL.Clear; ADOQuery1.SQL.Add(insertsql+EditNoValue+EditNameValue+EditIpValue+EditTypeValue+EditDateValue+EditNumValue+')'); ADOQuery1.Open;谢谢赐教!! 要用,号分开呀,而且你的字段类型如果是字符型的就要加上引号: ADOQuery1.Close; ADOQuerY1.SQL.Clear; ADOQuery1.SQL.Add(insertsql+',''''+EditNoValue+''','''+EditNameValue+''','''+EditIpValue+''','''+EditTypeValue+''','''+EditDateValue+''','''+EditNumValue+''')'); ADOQuery1.ExecSQL; 语法就不对,:too many actual parameters. ADOQuery1.Close; ADOQuerY1.SQL.Clear; ADOQuery1.SQL.Add(insertsql+ ':EditNoValue, :EditNameValue, :EditIpValue, :EditTypeValue, :EditDateValue, :EditNumValue)'); ADOQuery1.Parameters[0].Value:=EditNameValue; ADOQuery1.Parameters[1].Value:=EditIpValue; ADOQuery1.Parameters[2].Value:=EditTypeValue; ADOQuery1.Parameters[3].Value:=EditDateValue; ADOQuery1.Parameters[4].Value:=EditNumValue; ADOQuery1.ExecSQL; 大富翁又可以访问了 非正常错误,在loadResString处出错 ToolBar怎样使目前点击的按钮和其他的按钮的颜色不一样? 请问 关于过程内声明对象的销毁问题... 哪位了解北京用友安易技术有限公司,进来聊聊! Turbo Pascal中遇到的关于类型不吻合的疑问~请大虾赐教! 小问题:如何实现按任意键继续 谁开发过天敏VC4000监控卡 创建临时表问题?指创建在内存中,怎么用SQL语句写呢? 如何将程序中的ICO图标显示到TBitbtn 的按钮上?(即把ICO格式文件转成BMP格式文件) 各位大哥,如何实现在运行期间在form上复制控件的功能阿,分不够再加,必给阿!
ShowMessage('请输入网点编号')
else
begin
//查询是否已经存在要添加的记录
ShowMessage(EditNo.Text);
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(selectsql+EditNoValue);
ADOQuery1.OPen;
selectnum:=ADOQuery1.RecordCount;
end;
//ShowMessage('!');
if selectnum>0 then
begin
ShowMessage('已经存在这条记录');
selectnum:=0;
end
else
//添加记录
begin
{ADOQuery1.Insert;
ADOQuery1['brh_no']:=EditNoValue;
ADOQuery1['brh_name']:=EditNameValue;
ADOQuery1['brh_ip']:=EditIpValue;
ADOQuery1['brh_type']:=EditTypeValue;
ADOQuery1['brh_date']:=EditDateValue;
ADOQuery1['brh_num']:=EditNumValue;
ADOQuery1.Post; }
ADOQuery1.Close;
ADOQuerY1.SQL.Clear;
ADOQuery1.SQL.Add(insertsql+EditNoValue+EditNameValue+EditIpValue+EditTypeValue+EditDateValue+EditNumValue+')');
ADOQuery1.Open;
end;
ADOQuery1.ExecSQL;
还是同样的错!
ADOQuery1.Close;
ADOQuerY1.SQL.Clear;
ADOQuery1.SQL.Add(insertsql+EditNoValue+EditNameValue+EditIpValue+EditTypeValue+EditDateValue+EditNumValue+')');
ADOQuery1.Open;
谢谢赐教!!
ADOQuery1.Close;
ADOQuerY1.SQL.Clear;
ADOQuery1.SQL.Add(insertsql+',''''+EditNoValue+''','''+EditNameValue+''','''+EditIpValue+''','''+EditTypeValue+''','''+EditDateValue+''','''+EditNumValue+''')');
ADOQuery1.ExecSQL;
ADOQuerY1.SQL.Clear;
ADOQuery1.SQL.Add(insertsql+ ':EditNoValue, :EditNameValue, :EditIpValue, :EditTypeValue, :EditDateValue, :EditNumValue)');
ADOQuery1.Parameters[0].Value:=EditNameValue;
ADOQuery1.Parameters[1].Value:=EditIpValue;
ADOQuery1.Parameters[2].Value:=EditTypeValue;
ADOQuery1.Parameters[3].Value:=EditDateValue;
ADOQuery1.Parameters[4].Value:=EditNumValue;
ADOQuery1.ExecSQL;