Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/07/2008, 14:06
Avatar de Txoco
Txoco
 
Fecha de Ingreso: junio-2008
Ubicación: Perdido en tierras Quijotescas
Mensajes: 189
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Consulta a mas de una tabla

Hola!

Aunque sólo he leído por encima el código, he visto que no parametrizas la creación del recordset de consulta:

Código:
sql = "select saldo from cuenta where idcta = idcta"
Ten en cuenta que con esa línea le estás pidiendo al motor sql que te devuelva todas las filas de la tabla [cuenta] en las que el valor en [idcta] sea igual al valor en [idcta], es decir, todas las filas, porque todas tienen el mismo valor en el único campo que le pides. La claúsula where en esa sentencia es redundante e innecesaria, y sólo ralentiza el acceso a datos.

Tienes que concatenarlo de esta manera para que la consulta dependa del resultado del recordset principal:
Código:
sql = "select saldo from cuenta where idcta = " & rs!idcta
o así, si el campo [idcta] no es de tipo numérico:
Código:
sql = "select saldo from cuenta where idcta = """ & rs!idcta & """"
Aparte, en la primera instrucción que defines la instrucción SQL principal, ya estás haciendo un cruce con la tabla [cuenta] (que no parece que utilices), por lo que podrías sacar el valor directamente de ahí, simplemente añadiendo el campo "saldo" a la lista de SELECT, con lo que ya no necesitarías abrir más recordsets.

Como deduzco que sólo tendrás un saldo por cliente, te recomiendo el segundo método, aunque depende, claro, de lo que necesites exactamente
__________________
wile sona li mute e sona