用ADOQUERY更新数据的问题?

duanazhu 2004-05-01 07:39:47
procedure TForm_UserManage.Button2Click(Sender: TObject);
var
valueset:String;
begin
DataModule1.ADOQuery1.Close;
DataModule1.ADOQuery1.SQL.Clear;
DataModule1.ADOQuery1.SQL.Add('update userpower set '+ComboBox1.Text+' =:valueset');
DataModule1.ADOQuery1.Parameters.ParamByName('valueset').Value:=edit1.text;
DataModule1.ADOQuery1.ExecSQL;
DataModule1.ADOQuery1.SQL.Clear;
DataModule1.ADOQuery1.SQL.Add('select * from userpower');
DataModule1.ADOQuery1.Open;
end;

这段程序是在查找到符合条件的记录之后,对当前记录的某个字段进行更新,但是当我用
DataModule1.ADOQuery1.Parameters.ParamByName('valueset').Value:='xxx';
时,可以正确修改,用edit输入新的值就不行了,运行时总是提示:不正确的数据精度?
我的表中的几个字段全是文本型的
...全文
37 6 点赞 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
duanazhu 2004-05-02
DataModule1.ADOQuery1.Parameters.ParamByName('valueset').ASSTRING:=edit1.text;
编译时报错:未定义的asstring
  • 打赏
  • 举报
回复
duanazhu 2004-05-02
这个问题已经解决了,虽然楼上几位的方法都没用上,还是感谢大家了
  • 打赏
  • 举报
回复
duronshi 2004-05-01
DataModule1.ADOQuery1.Parameters.ParamByName('valueset').ASSTRING:=edit1.text;
  • 打赏
  • 举报
回复
laorer 2004-05-01
有时,那些打了.之后也显示不出来
  • 打赏
  • 举报
回复
duanazhu 2004-05-01
可是我就没有找adoquery.parameters.parambyname().asstring
只有.value啊?
  • 打赏
  • 举报
回复
Frankcheng 2004-05-01
你要进行类型转换。转成什么类型要看你的定义。例如:你定义的valueset的字段是VARCHAR
那么,DataModule1.ADOQuery1.Parameters.ParamByName('valueset')。ASSTRING:=edit1.text;
  • 打赏
  • 举报
回复
相关推荐
发帖
数据库相关
加入

2462

社区成员

Delphi 数据库相关
申请成为版主
帖子事件
创建了帖子
2004-05-01 07:39
社区公告
暂无公告