我用DBGrid和ADOQuery关联,可以从SQL Server2000中查询出记录,显示在DBGrid中,也可以在DGBrid中修改记录并保存到数据库中,但是用下面语句却不能删除数据库中的当前记录记录。为什么?
adoquery1.close;
ADOQuery1.Open;
ADOQuery1.Delete;
ADOQuery1.Refresh;如果用SQL语句,要删除当前记录,该怎样写?
adoquery1.close;
ADOQuery1.Open;
ADOQuery1.Delete;
ADOQuery1.Refresh;如果用SQL语句,要删除当前记录,该怎样写?
或者你的数据集没有刷新过来的 你再adoquery1.close;后adoquery1.open试试呢
总之,删不掉!为什么?
如果用SQL语句,详细怎么写?是当前记录!
SQL语句删除记录的语法是:delete from tablename Where 条件,在删除当前记录时,“条件”应该如何写呢?
ADOQUERY1.SQL.CLEAR;
ADOQUERY1.SQL.ADD('DELETE FROM 表名 WHERE 条件');
ADOQUERY1.EXECSQL;//千万不要使用ADOQUERY1.OPEN。因为OPEN 用于查询,插入和删除要用EXECSQL
adoquery1.open;
adoquery1.delete;
前提是不能有重复记录否则会显示列键信息不足而出错。
不用这句。