FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Pocos parámetros. Se esperaba...
Buenas gente..
me encuentro con el siguiente problema y cualquier sugerencia o ayuda sera agradecida... Estoy enviando (con ADOCommand) a una base access remota una instrucción Insert Into, hace la inserción pero luego devuelve el siguientes error de ODBC: 'Pocos parámetros. Se esperaba 9'. Empezé con un error similar (sin que llegara a insertar), pero lo solucioné reemplazando (para los campos string) la doble comilla por el valor como resultado de la función quotedstr. Les paso las instrucciones que arman el insert: if length(adotable5.fieldbyname('memo').asstring) = 0 then mem:=' ' else mem:=(adotable5.fieldbyname('memo').asstring); com.commandtext:='Insert Into MKB (nrokb, fecha, memo, r, k, g, anio, mes, dia) '+ 'values ('+(adotable5.fieldbyname('nrokb').asstring) + ', '+quotedstr(adotable5.fieldbyname('fecha').asstring)+ ', '+quotedstr(mem)+ ', '+(adotable5.fieldbyname('r').asstring)+ ', '+(adotable5.fieldbyname('k').asstring)+ ', '+(adotable5.fieldbyname('g').asstring)+ ', '+(adotable5.fieldbyname('anio').asstring)+ ', '+(adotable5.fieldbyname('mes').asstring)+ ', '+(adotable5.fieldbyname('dia').asstring)+')'; |
#2
|
||||
|
||||
Lo más sencillo es que coloques un punto de ruptura en ese punto y revises la consulta que se está generando; O un MessageBox donde puedas ver el contenido de la SQL.
Con eso, seguro que es más fácil saber lo que está pasando; Por ejemplo, que alguno de los campos esté vacío, nulo o incorrecto y al consultarlo como string te devuelva vacío, con lo que la SQL llevaría 2 comas seguidas.
__________________
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. |
#3
|
|||
|
|||
Gracias por esponder Neftali.. ya superé esa instancia antes de postear, es más, antes de usar la Quotedstr guardé la instrucción que generaba (usando doble comilla) y la pegué en la interfaz de consulta de Access y funcionó bien... luego cuando encontré eso, y como digo en el post más arriba, hace la inserción, pero luego me devuelve ese error y detiene la ejecución..
|
#4
|
||||
|
||||
Sigo pensando que si no pones la consulta aquí es difícil ayudarte.
Otra cosa, que una consulta funcione dentro de Access, no significa que necesariamente deba funcionar desde Delphi+ADO, ya que Microsoft Access tiene una sintaxis más amplia que la del SQL estandard (que es la que usas con ADO). Uno de los problemas que más suele dar es son los delimitadores de los distintos tipos de campos, junto con los formatos de fecha.
__________________
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. |
#5
|
|||
|
|||
te paso la consulta, tal como la genera la instrucción de arriba:
así como esta, hace la inserción pero devuelve el error de que se esperaban 9 parámetros. el campo fecha es texto, memo es memo, el resto son numéricos.. los datos a insertar son tomados de una base (local) con la misma estructura. Si en vez de la comilla simple (medianta Quotedstr) usamos la comilla doble (concatenándola) queda esta instrucción:
No hace la inserción, y devuelve el error de que se esperaban 2 parámetros. Gracias por tu ayuda.. Última edición por Casimiro Notevi fecha: 03-06-2010 a las 15:56:03. |
#6
|
||||
|
||||
¿Si pones esto directamente en el ADOCommand te lo añade?
Prueba a cambiar algunos campos por NULL (en los que esté permitido), así sabrás en cual te está dando problemas.
__________________
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. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como desvirgar al Windows vista en pocos minutos | ArdiIIa | Seguridad | 13 | 04-06-2008 21:26:03 |
Se esperaba un objeto | Io | HTML, Javascript y otros | 3 | 04-10-2007 17:23:13 |
Erasmus pocos y parió la abuela. | marcoszorrilla | La Taberna | 0 | 20-11-2006 07:32:20 |
Parametros Opcionales no Parametros por defecto | Velia | Varios | 7 | 19-08-2006 15:18:42 |
Administrar Memoria de Una aplicación mediana en maquina con pocos recursos | xtrem77 | API de Windows | 2 | 10-01-2004 01:22:52 |
|