sql delphi高手进
来源:百度知道 编辑:UC知道 时间:2024/05/15 18:22:08
在dbgrid中
若用update语句实现的是将所有记录的某一字段都改为一个值,如:
qq.xx.Close;
qq.xx.SQL.Clear;
qq.xx.SQL.Add('update 式 set 姓名=:a');
qq.xx.Parameters.ParamByName('a').Value:='刘';
qq.xx.ExecSQL;
这么做是将所有的记录的名为“姓名”的字段都改为了“刘”
那么如何对且仅对指定的一条记录的名为“姓名”字段修改为“刘”呢????
希望高手不吝赐教!!不胜感激!!
不用where条件
直接对选中的记录进行修改
若用update语句实现的是将所有记录的某一字段都改为一个值,如:
qq.xx.Close;
qq.xx.SQL.Clear;
qq.xx.SQL.Add('update 式 set 姓名=:a');
qq.xx.Parameters.ParamByName('a').Value:='刘';
qq.xx.ExecSQL;
这么做是将所有的记录的名为“姓名”的字段都改为了“刘”
那么如何对且仅对指定的一条记录的名为“姓名”字段修改为“刘”呢????
希望高手不吝赐教!!不胜感激!!
不用where条件
直接对选中的记录进行修改
虽然我知道这个问题怎么回答你,但是我不是高手,误入歧途的
最简单的方法就是直接把SQL改成'update 式 set 姓名=:a where 筛选条件
那么你就不能这种写
你这段SQL本来意思就是修改所有的姓名为刘,你传的这个参数很多余,要保证搜索的范围就必须要加WHERE条件,另外你这段代码用来干什么的? 我感觉这代码没有什么实际意义,因为搜索范围和修改结果是固定的,不具备灵活更新数据库的作用