![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Si no te da resultados, es decir, no te devuelve ningun registro es que, entonces, no debe de haber ningun registro donde el campo especificado en el "Combo" tenga el valor "TRASMISIONES". Fíjate si la cadena está escrita correctamente y si la almacenaste así todo en mayúsculas en la tabla.
Por cierto, la cláusula "SELECT" la tienes correcta pero si sólo tienes esa línea me resulta raro que no te haya dado error de índice al acceder al segundo elemento de la propiedad SQL del IBQuery (donde estaría la cláusula "WHERE"), salvo, claro, que tengas una línea en blanco debajo del "SELECT". Sobre tu última pregunta no la entendí muy bien... pero si te refieres a acceder a un parámetro determinado por su nombre sería así: IBQuery.ParamByName(<NombreParametro>) Última edición por jmariano fecha: 21-08-2005 a las 19:39:13. |
|
#2
|
|||
|
|||
|
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. |
|
#3
|
||||
|
||||
|
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í) |
|
#4
|
|||
|
|||
|
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 |
|
#5
|
||||
|
||||
|
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:
|
|
#6
|
|||
|
|||
|
Muchas gracias jmariano funciona a las mil maravillas, con personas así da gusto.
Un saludo Agustin. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|