我用treeview 绑定数据希望单击一个节点
取出id 然后用 delete 语句
实现数据精确删除。。请各位赐教 

解决方案 »

  1.   

    treeview的每个节点都有一个Text和Data属性,Text设置为你要显示的Name,Data设置为你要显示的ID。
    删除时,取节点背后的ID即可
      

  2.   

    那你不是有ID取到吗?在数据库中直接delete就行了嘛
      

  3.   

    删除节点你知道了,那么删除数据库中的数据可以如下:
    你在删除节点的代码之后,执行SQL语句:delete  ... where ID = xxx.Data就可以了    //注:Data是对象,需要自己转换
      

  4.   

    执行sql语句具体怎么操作
    是用dataset 还是用什么呢?
    我就是这里不太清楚
    还有转换。。是什么需要转换呢?
    谢谢。。
      

  5.   

    用query
    with query do
    begin
      close;
      SQL.add('delete * from table where Id = ...');
      open;
    end;
      

  6.   

    谢谢 varick_zhong
    问题已经解决了
      

  7.   

    可是。。为什么是先close
    再open呢 
    一般的数据库操作不都是先open 再close得吗?
      

  8.   

    应该是Execsql,open是用来打开数据集像select语句用,而update,delete需要用execsql
      

  9.   

    with query do
    begin
      close;
      //close修改SQL语句
      sql.clear;
      SQL.add('delete * from table where Id = ...');
      //执行,没有返回集,如update,delete
      exesql; //不知道有没有拼错
      //open; //有返回集,如select
    end;
      

  10.   


    数据库打开状态下是不能修改SQL的