FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
enviar dato real a sql
hola amigos de club delphi, miren tengo el siguiente problema
tengo un procedimiento almacenado en sql llamado SP_MODIFICA_PRODUCTO este recibe dos parametros un codigo de tipo entero y un valor de tipo real, por ejemplo cuando quiero modificar algo en sql lo puedo ejecutar asi SP_MODIFICA_PRODUCTO 1, 15.5 sql trabaja los decimales con punto, en cambio en delphi las operaciones me las devuelve con coma si por ejemplo en delphi tengo una variable que esta asi valReal := 2/10; valReal va a tener valor 0,2 si le llamo al procedimiento y le paso SP_MODIFICA_PRODUCTO 1, valReal eso quedaria como SP_MODIFICA_PRODUCTO 1, 0,2 y como uds saben que en sql la coma separa parametros me da un error cuando quiero escribir desde mi aplicacion delphi en la base de datos como lo hago para enviar un valor real desde delphi a sql? la consulta la hago asi Query:='SP_MODIFICA_PRODUCTO ' + IntToStr(CodigoIngreso_Int) + ',' + FloatToStr(ValorIngreso_real); Q_IngresaPlato.SQL.Clear; Q_IngresaPlato.SQL.Add(query); Q_IngresaPlato.ExecSQL; pero esto me da error espero entiendan mi problema, gracias por la ayuda |
#2
|
||||
|
||||
Cita:
Saludos. |
#3
|
|||
|
|||
es que el dato lo debo capturar en el programa y del programa enviatr los datos a la tabla en sql
necesito saber como mandar numeros reales, con string e integers no hay problema |
#4
|
|||
|
|||
Hola...
Intenta de esta forma:
Si no te funciona (no lo he probado ), puedes intentar usando un componente para tratar con procedimientos almacenados, claro, esto depende de que componentes estés usando para conectarte a tu base de datos... Saludos... |
#5
|
||||
|
||||
Cita:
|
#6
|
|||
|
|||
no me funciono
mi procedimiento almacenado es este CREATE PROCEDURE SP_MODIFICA_PRODUCTO @Cod smallint, @Cant float AS update productos set Cantidad = @Cant where Codigo =@Cod como ven recibe un dato float, con el entero no tengo problemas y lo malo que desde el programa debo trabajar obligatoriamente con datos float por que el integer hace un trunc y 15,5 lo deja en 15, enviar el dato como un string tampoco puedo por que la variable an sql esta definida como float asi que me dara error si envio un string a un float la parte que escribe es un ciclo for i:=0 to Indice_Int-1 do begin ValorIngreso_real:=RestaProductosCod[i]/1000; CodigoIngreso_Int:=StrToInt(codigo_Ing[i]); { Query:='SP_MODIFICA_PRODUCTO ' + IntToStr(CodigoIngreso_Int) + ',' + FloatToStr(ValorIngreso_real); Q_IngresaPlato.SQL.Clear; Q_IngresaPlato.SQL.Add(query); Q_IngresaPlato.ExecSQL; } end; ValorIngreso_real es el valor de tipo real definido en delphi como ven recibe una division que le da datos del tipo 14,5 47,8 etc pero el procedimiento queda asi SP_MODIFICA_PRODUCTO 1, 15,4 como ven se crean tres parametros debido a la coma de delphi me gustaria cambiar esa coma por punto bueno gracias por la ayuda lo agradezco mucho, todos los puntos de vista me sirven |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿como enviar una consulta de un dato a un qreport en c++ builder? | soma25 | Impresión | 0 | 19-12-2007 06:32:15 |
¿como enviar una consulta de un dato a un qreport en c++ builder? | soma25 | C++ Builder | 0 | 14-12-2007 20:47:49 |
dato real no exacto | jsanchez | Firebird e Interbase | 2 | 05-09-2007 23:01:20 |
necesito enviar un dato de un edit a una campo predeterminado en word | pipe | Varios | 1 | 27-07-2007 06:32:05 |
Enviar correo con dato adjunto | jncrls | Internet | 1 | 06-05-2003 15:26:33 |
|