Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Insertar Numero Real en Access (https://www.clubdelphi.com/foros/showthread.php?t=8851)

Franklim 03-04-2004 11:47:50

Insertar Numero Real en Access
 
Hola amigos, tengo el siguiente problema:
Uso Delphi 6 y Access 2000 con ADO.

Necesito guardar el precio de venta en una tabla y lo que hago es lo siguiente:

sql := 'Insert into Tabla (nom,apell,precio) values ('+'''''+nom.text+''''+','+'''''+apell.text+''''+','precio.text+');';
AdoQueryConsulta.sql.clear;
AdoQueryConsulta.sql.add(sql);
AdoQueryConsulta.execsql;

Los valores a insertar los cojo del Formulario, para el nombre y el apellido no tengo problema porque son campos string, pero para el precio si ya que lleva decimales, les pongo un ejemplo de como quedaria la consulta anterior

nom.text = Pedro
apell.text = Gil
precio.tex = 55,25

sql := 'Insert into Tabla (nom,apell,precio) values ('Pedro','Gil',55,25);';
y me da error porque dice que tiene mas valores que parametros el sql, que necesita 3 datos y le paso 4, el problema es el valor real con la coma.
Yo otras veces lo he solucionado cambiando la , por un punto antes de pasarlo al sql, quedaria asi:
sql := 'Insert into Tabla (nom,apell,precio) values ('Pedro','Gil',55.25);';
pero me gustaria saber si existe alguna funcion que te permita pasarlo como esta sin necesidad de tener que cambiar la coma por el punto.


Saludos y muchas gracias

__cadetill 03-04-2004 15:11:40

Prueba con

Código:

var
  OldDS: Char;
begin
  OldDS := DecimalSeparator;
  DecimalSeparator := '.';

sql := 'Insert into Tabla (nom,apell,precio)
          values ('+'''''+nom.text+''''+','+'''''+apell.text+''''+','precio.text+');';
AdoQueryConsulta.sql.clear;
AdoQueryConsulta.sql.add(sql);
AdoQueryConsulta.execsql;

  DecimalSeparator := OldDS;
end;



La franja horaria es GMT +2. Ahora son las 06:42:03.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi