query

hubangjian 2000-08-23 09:38:00
在我的QUERY连接上了DBGRID后,怎样在DBGRID中选定了一条记录后,然后删除它?但用
QUERY.DELETE 老是出错,不在编辑和插入状态,我都做了,还是不行?用另外的方法,
QUERY的SQL方法删除时,怎样在DBGRID中捕捉鼠标当前选定的行,代码如何写?


谢谢!
...全文
128 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bpc 2000-08-23
  • 打赏
  • 举报
回复
QUERY的REQUISELIVE属性设置为TRUE即可
spring 2000-08-23
  • 打赏
  • 举报
回复
query的SQL方法:
大意:
选定了删除的行后,
temp:=dbgrid.selectedfield.keyfield.asstring;
(如果知道表中的关键字段的column位,可直接temp:=dbgrid.columns[1].field.asstring)
然后在sql里面写:
delete from table_name
where keyfield = temp

keyfield指你表中的PK字段.
lotto 2000-08-23
  • 打赏
  • 举报
回复
只有少数的数据库支持使用query修改数据库记录,你还是使用sql语句删除吧。
procedure deleterecord;
begin
with tquery.create(self) do
begin
databasename:='XXdata';
sql.add('delete from table_name');
sql.add('where id='+''''+query1.fieldbyname('id').asstring+'''');
//query1为与dbgrid相连的query
execsql;
free;
end;
query1.active:=false;
query1.active:=true;
end;

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧