ya checaste que id.text envie el valor del tipo necesario??
(entero, cadena, fecha... etc)
ya probaste enviando la variable por parametros?
Código SQL
[-]
dm.ejecuta.SQL.Clear();
dm.ejecuta.SQL.Add("Insert into tabla values (:valor)");
dm.ejecuta.ParamByName("valor").AsInteger = id.text.ToInt();
dm.ejecuta.execsql;
si en algo me equivoque disculpa, manejo mas c++ builder que delphi y lo hice de memoria
saludos, espero te sirva