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 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Smile Query restringir busqueda

Hola compañeros de aventuras tengo un problemita que me tiene barado y solicito de su inmensa ayuda

necesito que mi query haga el siguiente select

select max(item_prod) as mayor from subprod

pero no se como decirle que ese item debe tomarlo del codigo escogido en el DBLookupComboBox.text donde por ejemplo tengo seleccionado el codigo 100 o el 200, en pocas palabras no se como armar el where porfa ayudenmeeeeee es de suma urgencia se los agradecere toda la vida
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #2  
Antiguo 23-06-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código SQL [-]
  Where LoQueSea = QuotedStr(DblookUpCombobox.Text);
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Marcos gracias por responderme antetodo gracias
me saca un error que dice:

Cita:
Function unknown QUOTEDSTR
El combo tiene en listfield el nom_producto pero en el datasource y en el Datafield hacen referencia al codigo sera que debe ir asi:

Código SQL [-]
Where cod_prod = QuotedStr(DblookUpCombobox.value);
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #4  
Antiguo 23-06-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código SQL [-]
Where
Código SQL [-]
 cod_prod = QuotedStr(DblookUpCombobox.Text);

QuotedStr ----> Esta definida en la Unidad SysUtils.

Un Saludo.

__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Oye marcos no se que es lo que pasa ya mire y SysUtils si esta definida pero me sigue sacando el mismo inconveniente mira lo estoy haciendo asi

Código Delphi [-]
  IBQuery1.SQL.Text := 'select max(item_comp) as mayor from subprod where cod_prod = QuotedStr(DBlookupComboBox-Text)'

me saca un error:

Cita:
Function unknown QUOTEDSTR
Uso delphi 6

Igualmente muchisimas gracias por todo
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #6  
Antiguo 23-06-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hay que pensar un poquito antes de simplemente pegar el código.

QuotedStr es una función de Delphi y SQL no entiende de Delphi. Así que básicamente se trata de que uses la función para obtener un valor entrecomillado que puedas usar para armar la consulta. Y por armar la consulta me refiero a conformar la cadena de caracteres que vas a enviar al servidor.

La cadena que envíes deberá ser algo del estilo:

select max(item_comp) as mayor from subprod where cod_prod = "AF-404"

La cadena "AF-404" será la que obtengas con QuotedStr y usarás este valor para concatenarlo con el resto de la cadena.

// Saludos
Responder Con Cita
  #7  
Antiguo 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Marcos Roman ya lo logre muchisimas gracias aqui mando la instruccion para las personas que tengan este tipo de inconvenientes y nuevamente 10000000 miillones de gracias.

Código Delphi [-]
 
IBQuery1.SQL.Text := 'select max(item_comp) as mayor from subprod where cod_prod =' + QuotedStr(DBLookupComboBox1.KeyValue);
Gracias Totalessss

esto lo busque en internet pero ya no recuedo la pagina, la busco y la publico en este hilo gracias
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas

Última edición por el_barto fecha: 23-06-2005 a las 23:39:56.
Responder Con Cita
  #8  
Antiguo 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Lightbulb Lo prometido es deuda

Lo prometido es deuda aqui esta el link es sobre freepascal pero he escuchado que freepascal es un version free de delphi entonces aqui esta el link freepascal
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #9  
Antiguo 23-06-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¡Pero si esta misma explicación podías encontrarla en la ayuda de Delphi!

Cita:
Empezado por freepascal
QuotedStr returns the string S, quoted with single quotes. This means that S is enclosed in single quotes, and every single quote in S is doubled. It is equivalent to a call to AnsiQuotedStr(s, '''').
Cita:
Empezado por delphi
Use QuotedStr to convert the string S to a quoted string. A single quote character (') is inserted at the beginning and end of S, and each single quote character in the string is repeated.


// Saludos
Responder Con Cita
  #10  
Antiguo 23-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Jejejeje uppssss no comprendi mucho la explicacion que lei en delphi en cambio en la pagina de freepascal entendi algo mas, es cuestion de entendimiento

JEJEJE ademas algo bueno paso de todo esto ahora puedo consultar la ayuda de freepascal no todo es malo, disculpame de todas maneras la torpeza, te debo una corona o mas bien algo mas fuertecito
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #11  
Antiguo 23-06-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Tendrá que ser mezcal

Ahora, yo te recomiendo que, en lugar de armar tus consultas de esa forma, utilices parámetros ya que así obtienes códigos mucho más legibles. Por ejemplo:


Código Delphi [-]
IBQuery1.SQL.Text := 'select max(item_comp) as mayor from subprod where cod_prod = :codigo';
IBQuery1.ParamByName('codigo').AsString := DBLookupComboBox1.KeyValue;
IBQuery1.Open;

Quizá no sientas mucha diferencia, pero cuando tengas que armar consultas en las que debas sustituir varios valores más, te pondrás verde nada más de ver la concatenación final.

// Saludos
Responder Con Cita
  #12  
Antiguo 24-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Aceptada la sugerencia voy a pnerme al dia con mi codigo graciasssss
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #13  
Antiguo 24-06-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 19
el_barto Va por buen camino
Cita:
Empezado por roman
Tendrá que ser mezcal
Lo que sea, aqui en Bogota cuando hay rumbita se toma hasta al agua de los floreros...
jajaja
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
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


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


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