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条件
直接对选中的记录进行修改

虽然我知道这个问题怎么回答你,但是我不是高手,误入歧途的

最简单的方法就是直接把SQL改成'update 式 set 姓名=:a where 筛选条件

那么你就不能这种写
你这段SQL本来意思就是修改所有的姓名为刘,你传的这个参数很多余,要保证搜索的范围就必须要加WHERE条件,另外你这段代码用来干什么的? 我感觉这代码没有什么实际意义,因为搜索范围和修改结果是固定的,不具备灵活更新数据库的作用