Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   No coinciden los tipos de datos (https://www.clubdelphi.com/foros/showthread.php?t=15205)

judoboy 14-10-2004 09:40:21

No coinciden los tipos de datos
 
Hola estoy haciendo una nueva apliación utilizando como BDA Access, el problema es que al realizar una consulta me dice que no coinciden los tipos de datos

Código:

SentenciaSql:=' SELECT * FROM PRESUPUESTOS WHERE CODIGO_PRESUPUESTO='+FrmPresupuestos.DBEditCodigo.Text+'';
y no lo entiendo por que codigo presupuesto lo tengo definido en la base de datos como tipo texto.

Sin embargo realizando consultas similares con campos de tipo integer no me da ningún problema. Alguien sabe donde puede estar el fallo.

jplj 14-10-2004 10:37:32

Creo que te faltan los apostrofes o comillas que delimitan el valor del campo de texto.

Código:

'SELECT * FROM PRESUPUESTOS WHERE CODIGO_PRESUPUESTO=' + '''FrmPresupuestos.DBEditCodigo.Text''' + ';';
También debes finalizar la instrucción con punto y coma.

Lepe 14-10-2004 10:39:52

El SQL presupone que es un entero lo que hay en DBEdit, sin embargo, en compilación todo está bien ya que estas uniendo cadenas de texto.

Código Delphi [-]
SentenciaSql:=' SELECT * FROM PRESUPUESTOS WHERE CODIGO_PRESUPUESTO='+QuotedStr(FrmPresupuestos.DBEditCodigo.Text);

Como quieres un texto, he usado QuotedStr para que al final te quede algo así:
Código SQL [-]
 SELECT * FROM PRESUPUESTOS WHERE CODIGO_PRESUPUESTO= ' contenido_del_dbEdit'
Las comillas es lo que no se ponían en tu asignación.

Saludos


La franja horaria es GMT +2. Ahora son las 01:29:21.

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