Propriedades OriginalValue e UnderlyingValue do ADO

Definição e uso

A propriedade OriginalValue pode retornar um valor variant que contém o valor do campo que existia antes da chamada da função Update ou UpdateBatch.

A propriedade UnderlyingValue pode retornar um valor variant que contém o valor atual de um campo. Este valor não precisa necessariamente refletir alterações feitas por outros usuários e pode não ser o mais recente.

Dica:Use a propriedade Resync do objeto Recordset para obter os valores mais recentes de todos os objetos Field no conjunto Fields.

Dica:Essas duas propriedades podem ser usadas conjuntamente para resolver conflitos que可能出现 ao atualizar em lote.

sintaxe

objField.OriginalValue
objField.UnderlyingValue

instância

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "customers", conn
set objfield=rs.fields("companyname")
Some code..................
'Verificar alterações'
rs.movefirst
while rs.eof=false
  if objfield.OriginalValue<>objfield.UnderlyingValue then
    response.write("Os dados foram alterados!<br />")
    response.write("Valor original: ")
    response.write(objfield.OriginalValue & "<br />")
    response.write("Valor atual: ")
    response.write(objfield.UnderlyingValue & "<br />")
  end if
  rs.movenext
next
'Mais código...................
rs.Close
conn.close
%>