Y si pruebas con lo siguiente, ya que estás haciendo un open cuando realmente no estás seleccionado ningun campo.
Código Delphi
[-]adoquery1.close;
adoquery1.fieldbyname('valor1').asstring:=edit2.Text;
adoquery1.fieldbyname('valor2').asstring:=edit1.Text;
adoquery1.ExecSQL;
No he usado nunca los componentes ADO, pero con todos los que usé, para una consulta que no devuelve registros no se podía utilizar el Open, ya que éste se usa para operaciones de selección.
Un saúdo.