Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-11-2011
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 13
Salnhack Va por buen camino
Question Problema con query

Hola estoy implementado una consulta de seleccion para asignarle el resultado a una variable que despues sera utilizada mas adelante el codigo que utilizo es el siguiente

Código Delphi [-]

with DataModule4.Query1 do
      begin
       Close;
       SQL.Clear;
       SQL.Add('select (id_cult) from cultivos where desccultv=' +  QuotedStr(suiDBLookupComboBox3.Text));
       Open;
       id_cultv:=ParamByName('id_cult').AsInteger;
     end;

seleciono el ide de la tabla cultivos correspondiente al cultivo selecionado en el comboBox
el problema es que cuando compilo y ejecuto la consulta me da que no encuentra el campo id_cult en la tabla, a la hora de la asignacion.

id_cultv:=ParamByName('id_cult').AsInteger;

cundo ejecuto la consulta sin la asignacion me trabaja bien, help please
Gracias.
Responder Con Cita
  #2  
Antiguo 01-11-2011
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Querras decir:

Código Delphi [-]
with DataModule4.Query1 do
      begin
       Close;
       SQL.Clear;
       SQL.Add('select id_cult from cultivos where desccultv=:cultivo') ;
       ParamByName('id_cult').AsString :=suiDBLookupComboBox3.Text;
       Open;
       id_cultv:=FieldByName('id_cult').AsInteger;
       Close;
     end;

Este código funciona bien usando Zeos que crea automáticamente los parámetros del query, no se si los demás componentes lo hagan también ya que no mencionas cuales usas.

La asignación que haces es incorrecta ya que estas tratando de acceder a un Parámetro del query y no a un campo, puedes tambien cambiar ParamByName por FieldByName y seguramente ahora si te va a funcionar. Por otro lado, tienes que verificar que la consulta te devuelva algo antes de asignarlo y en caso contrario hacer algo en consecuencia, ya que si no te devuelve nada quiere decir que no existe ninguna muestra con ese nombre.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 01-11-2011
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 13
Salnhack Va por buen camino
Ok

gracias, tendre en cuenta tus sugerencias, soy nuevo en el trabajo con base de dato,
Responder Con Cita
  #4  
Antiguo 02-11-2011
Avatar de javier7ar
javier7ar javier7ar is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 124
Poder: 19
javier7ar Va por buen camino
Cita:
Empezado por AzidRain Ver Mensaje
Querras decir:

Código Delphi [-]
with DataModule4.Query1 do
      begin
       Close;
       SQL.Clear;
       SQL.Add('select id_cult from cultivos where desccultv=:cultivo') ;
       ParamByName('id_cult').AsString :=suiDBLookupComboBox3.Text;
       Open;
       id_cultv:=FieldByName('id_cult').AsInteger;
       Close;
     end;
en el codigo que te paso AzidRain, la linea:
Código Delphi [-]
ParamByName('id_cult').AsString :=suiDBLookupComboBox3.Text;
deberia ser:
Código Delphi [-]
ParamByName('cultivo').AsString :=suiDBLookupComboBox3.Text;
porque el parametros se llama cultivo no id_cult
Aclaro por si lo copias y no te funciona, es ese el problema
Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con Query cheche358 Conexión con bases de datos 7 07-08-2011 04:51:27
Problema con query lejia Impresión 3 12-10-2007 23:08:16
problema con query UREÑA Conexión con bases de datos 3 11-07-2007 21:09:29
problema con los query ercrizeporta Conexión con bases de datos 2 28-05-2007 21:22:09
Problema Con Un Query Ing Harry SQL 9 14-06-2005 00:51:26


La franja horaria es GMT +2. Ahora son las 18:46:43.


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
Copyright 1996-2007 Club Delphi