Club Delphi  
    Paypal   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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-08-2005
perillan perillan is offline
Miembro
 
Registrado: feb 2005
Posts: 82
Poder: 22
perillan Va por buen camino
He repasado la cláusula "SELECT" y efectivamente tienes toda la razón había una línea en blanco y ahora da un error de índice 'list index out of bounds(1)'. que se debe poner con la cláusula ("WHERE").
Un saludo y perdona las molestias que te estoy dando.
Responder Con Cita
  #2  
Antiguo 21-08-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 22
jmariano Va por buen camino
Percisamente, para que no te de ese error de índice tenías bien dicha linea en blanco (o, tambien, podrías poner una cláusula "WHERE" por defecto), si te lo comenté fue porque me paració rarísimo que no te lo diera si sólo tenías la cláusula "SELECT". (De lo que se trata, en realidad, es dividir la sentencia "SELECT" en líneas para despues modificar fácilmente aquellas cláusulas que han de ser dinámicas, que en tu caso es la cláusula "WHERE", y así no tener que estar repitiendo toda la consulta siempre, al menos así es como yo lo hago).

¿Revisaste la tabla a ver si existe ese valor "TRASMISIONES? ¿Te funcionó al final la consulta? (y aclárame la última pregunta porque, al menos yo, no la entendí)
Responder Con Cita
  #3  
Antiguo 22-08-2005
perillan perillan is offline
Miembro
 
Registrado: feb 2005
Posts: 82
Poder: 22
perillan Va por buen camino
La consulta funciona perfectamente con la línea en blanco como comentastes. En la segunda pregunta lo que quiero es continuar con otra condición (la consulta con dos condiciones que se cumplan con un AND). Hechale un vistaza pues sale el error "mission operator or semicolon".



var
VISTO:string;
begin

VISTO:='BASEDATOS';
IBQuery1.Active := False;
IBQuery1.SQL[1] := 'WHERE ' + VISTO + ' = :valor' AND +ComboBox1.Items[ComboBox1.ItemIndex] ' =:valor1';
IBQuery1.Params[0].AsString :='TRANSMISIONES';
IBQuery1.Params[1].AsString :='***';//Este resultado tiene que ser (>= 1) mayor o igual a Uno
Responder Con Cita
  #4  
Antiguo 22-08-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 22
jmariano Va por buen camino
Lo que tienes mal es como escribiste la consulta (el "AND" y ">=" forman parte de la consulta SQL y te falto el operador de concatenación al final). Revisa lo siguiente:

Código Delphi [-]
var
  VISTO:string;
begin
  VISTO:='BASEDATOS';
  IBQuery1.Active := False;
 
  // El "AND" y el operador ">=" van dentro de la cadena de consulta
  IBQuery1.SQL[1] := 'WHERE ' + VISTO + ' = :valor AND ' + 
    ComboBox1.Items[ComboBox1.ItemIndex] + ' >= :valor1';
 
  IBQuery1.Params[0].AsString :='TRANSMISIONES'; 
  IBQuery1.Params[1].AsString :='1'; // (>= 1)
  IBQuery1.Active := True; 
end;
Responder Con Cita
  #5  
Antiguo 22-08-2005
perillan perillan is offline
Miembro
 
Registrado: feb 2005
Posts: 82
Poder: 22
perillan Va por buen camino
Muchas gracias jmariano funciona a las mil maravillas, con personas así da gusto.
Un saludo Agustin.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 19:29:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi