zoukankan      html  css  js  c++  java
  • 如何判断一条记录什么字段被修改了 [问题点数:40分,结帖人bluesukeke]

    查询出来数据,在数据集编辑状态下,如何判断一条记录被修改了,哪些字段被修改了。

    可用adoquery的Delta屬性。。。
    eg:

    ClientDataSet1.Delta...

    PS:POST前是準確的。。。

     ADOQuery1.Fields[0].NewValue
      ADOQuery1.Fields[0].OldValue
      ADOQuery1.Fields[0].CurValue

    这三个值,你自己看看就知道了

    wxieyang,有没有更好的办法。
    kye_jufei,delta属性adoquery没有的啊

    ClientDataSet才有Delta,ado没有
    你先用那三个变量比较的方式处理下,仙实现了功能再研究更好的办法。呵呵

    另外,你可以通过每条记录的 RecordStatus是否包含rsModified(rsModified in RecordStatus)来判断当前记录是否被更改了。
    其实这已经很简单了,两层循环就能把所有被修改的记录以及修改过的字段都找到

    刚刚看了看ADO的代码,好像通过判断
    (ADOQuery1.Recordset.Fields[i].Attributes and (adFldUpdatable + adFldUnknownUpdatable)) <> 0
    来确定当前记录的当前字段释放被改写了。
    这个我没有测试过,你可以自己试试看
    上面的表达式为True,则表示当前记录的当前字段被修改了,结合着ADOQuery1.RecordStatus,应该就是最简单的判断了吧

  • 相关阅读:
    java传值问题.
    方法重载
    java中各种运算符
    java中各种运算符
    java网址
    对象的初始化顺序
    Exploit,shellcode经验技巧杂谈
    关于16位的OS尝试
    window系统下的远程堆栈溢出 《实战篇》
    Exploit,shellcode经验技巧杂谈
  • 原文地址:https://www.cnblogs.com/jijm123/p/7458691.html
Copyright © 2011-2022 走看看