Error al ejecutar consulta
Buenas a todos ... tengo un problema y no se q es lo que falla, me explico:
utilizo delphi 7 contra una base de datos access 2003 tengo 2 tablas, una propia del access y otra vinculada de un sql server 2000 el problema es q tengo una consulta en el access que funciona correctamente: Código SQL [-] INSERT INTO tarticulo SELECT dbo_articulos.id AS id,'' as clase, dbo_articulos.descripcion AS descripart,'' as rutafoto, '' as nombrecliente, dbo_articulos.precio AS precio,'' as idcliente FROM dbo_articulos pero cuando la ejecuto desde el delphi: Código Delphi [-] cadena := 'INSERT INTO tarticulo SELECT dbo_articulos.id AS id,'' as clase, dbo_articulos.descripcion AS descripart,'' as rutafoto, '' as nombrecliente, dbo_articulos.precio AS precio,'' as idcliente FROM dbo_articulos'; datos.Qimportpv.Close; datos.Qimportpv.sql.Clear; datos.Qimportpv.sql.add(cadena); Datos.Qimportpv.execsql; me dice que el numero de campos no son iguales. Pero si en access si funciona!!! se le va la chapa a mi ordenata :)?!?! Muchas gracias |
El problema está en la asignación a cadena,
cadena := 'INSERT INTO tarticulo SELECT dbo_articulos.id AS id,'' as clase, dbo_articulos.descripcion AS descripart,'' as rutafoto, '' as nombrecliente, dbo_articulos.precio AS precio,'' as idcliente FROM dbo_articulos'; Las comillas que pones en Acces para asignar cadenas vacías a los campos, Delphi las interpreta como una sóla comilla. Prueba esto:
En vez de de QuotedStr(''), podrías poner '''' (4 comillas), pero no resulta muy legible. |
La franja horaria es GMT +2. Ahora son las 16:19:09. |
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