Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Error con AdoQuery o AdoDataSet (https://www.clubdelphi.com/foros/showthread.php?t=72993)

Paulao 24-03-2011 18:44:02

Error con AdoQuery o AdoDataSet
 
Quando me voy a activar a AdoQuery o o AdoDataSet, me lo da el seguinte error:
Falla a converter el varchar valor 'Test' en un tipo de datos int
pero mi query es la que estas abajo:
Código SQL [-]
select
 i.operador,i.tipo_edicao,i.num_edicao,i.num_pagina,i.data,l.nome,
 replace((100-l.per_indef),'.',',')as per_indef 
from
 log_index_logs l inner join log_index_img i on l.nome = i.nome_final
where 
  substring(nome,1,4) between 1876 and 1940 and 100-l.per_indef >= 82 or
  substring(nome,1,4) between 1941 and 1950 and 100-l.per_indef >= 85 or
  substring(nome,1,4) between 1951 and 1960 and 100-l.per_indef >= 87 or
  substring(nome,1,4) between 1961 and 1970 and 100-l.per_indef >= 88 or
  substring(nome,1,4) between 1971 and 1980 and 100-l.per_indef >= 89 or
  substring(nome,1,4) between 1981 and 1990 and 100-l.per_indef >= 90 or
  substring(nome,1,4) between 1991 and 2001 and 100-l.per_indef >= 92
order by l.nome,i.data,i.operador

Paulao 24-03-2011 18:50:12

descobri que el problema estas en la clausula WHERE, pues en Sql Server(Manager) el funciona. Sera que tengo que hacer una convercion en las substrings? Como hago esto?

Paulao 24-03-2011 18:58:16

Yo esta listo. Es que en Delphi tuve que poner comillas en las SubString y en el Manager del sql server no. Creo que el SqlServer ya lo hace una convercion implicita en los campos que los componentes DBGO del delphi no lo hace. Gracias.


La franja horaria es GMT +2. Ahora son las 02:05:00.

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