FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
1.-Estoy trabajando con DBExpres (perdón por no decirlo antes).
2.- No hay más info del error. Eso es todo lo que sale. 3.- Si sustituyo los parámetros por sql directo, funciona bien. No da error:
Pero hasta ahora confiaba más en parámetros. |
#2
|
||||
|
||||
Falta información, suponemos que estás haciendo un bucle al leer de un fichero de texto.
Seguramente es una línea de ese fichero de texto que tiene datos que no son correctos. Además, si es así, o sea, es un bucle, por lógica, ese código no debería ser así, sino así:
|
#3
|
|||
|
|||
Tienes razón Casimiro y ya está arreglado, pero el error es otro: "Assertion failure (c:\user\code\....\firebird.sql.pas, line 1004).
Voy a seguir tu consejo y revisar el fichero por si viene alguna linea con datos no correctos. Gracias a ambos |
#4
|
||||
|
||||
Pon un simple contador y muéstralo para saber en qué línea ocurre, algo temporal, como esto:
Código:
iContador:=0; inicio bucle lee línea; inc(iContador); label1.caption := intTostr(icontador); application.processmessages; q.close; q.param... q.param... q.exec fin de bucle |
#5
|
||||
|
||||
Correcto, es lo recomendable. Siempre utilizar parámetros. El hacer la prueba sin ellos es simplemente para ver si la misma consulta directamente da algún problema y descartar así otros errores.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
Mi segundo offtopic del día:
1. ¿El archivo "firebird.sql.pas" es tuyo?... De ser así, ¿Cuál es la línea 1004? 2. ¿Tienes alguna garantía, o has validado anteriormente que "slinea" tenga 14 elementos? PD: A simple vista parecería mucho mas óptimo hacer un "SplitString" por única vez por línea, para luego tomar cada uno de los elementos del array.
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#7
|
|||
|
|||
Cita:
2.- Sí, está validado y con valores correctos, no viene ningún carácter extraño. Después de mucho probar conseguí saber donde está el error. El error me da en los campos POR_RETE y POR_COMIS. Si quito estos campos, el proceso de inserción lo hace correctamente. Estos campos están definidos en la BD. como campos decimal(5,2) En slinea vienen (ambos) con valor 0,0. El parámetro los defino como asFloat:
Y aquí es cuando se produce el error en el momento de insertar (sqlinsertar.execsql). No da ningún error cuando se hace la asignación. ¿Que es lo que estoy haciendo mal? Gracias a todos por vuestro tiempo Última edición por Casimiro Notevi fecha: 07-07-2020 a las 11:15:56. |
#8
|
||||
|
||||
Pues haz lo que te comenté para saber en qué línea del fichero de texto ocurre.
Seguramente esté vacío, tenga punto en lugar de coma, etc. |
#9
|
|||
|
|||
He revisado el texto. He reducido el fichero a una sola linea para probar.
No da error al leer o asignar a parámetros. La asignación la hace correctamente (comprobado paso a paso). A los parámetros de tipo float les asigna el valor 0 (cero). Pero sigue sigue dando el mismo error al hacer el execSql. No es que de error en una linea cualquiera, lo da ya en la primera. |
#10
|
||||
|
||||
¿El error firebirdsqlpas, o así?
Revisa el proyecto, a ver si has metido algo raro por ahí. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error de Parametros IBX | Chaja | Conexión con bases de datos | 3 | 06-12-2010 04:12:04 |
Error En Los Parametros | DISAC_FIGO | Conexión con bases de datos | 1 | 13-01-2007 20:27:34 |
error en parametros | emeritos | Conexión con bases de datos | 9 | 11-12-2006 17:45:51 |
No puedo insertar datos (por parámetros) en una tabla - Zeos, Mysql | belen | MySQL | 2 | 13-10-2006 00:16:51 |
error en parametros con ado | redlyon13 | Conexión con bases de datos | 10 | 24-05-2004 01:32:22 |
|