Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

VB6 varios resultados SQL

Estas en el tema de VB6 varios resultados SQL en el foro de Visual Basic clásico en Foros del Web. Hola!! Tengo es te código: Cita: Public Function Añadir(palabras As String) As String Dim base As Database Dim ttablaAs Recordset Dim campo_campo3 As Field Set ...
  #1 (permalink)  
Antiguo 16/12/2005, 18:13
Avatar de MeXiCaN  
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona - España , Morelia - México
Mensajes: 162
Antigüedad: 19 años, 10 meses
Puntos: 0
VB6 varios resultados SQL

Hola!!

Tengo es te código:

Cita:
Public Function Añadir(palabras As String) As String

Dim base As Database
Dim ttablaAs Recordset
Dim campo_campo3 As Field

Set base = OpenDatabase(App.Path & "\basededatos.mdb")
Set tmiha = base.OpenRecordset("SELECT * FROM tabla WHERE campo1='" & (LCase(palabras)) & "'")
Set campo_campo3 = ttabla.Fields("tercercampo")

If ttabla.RecordCount < 1 Then
Añadir = palabras & " " & "[Sin Concordancia]"
Else
Añadir = palabras & " " & "[" & campo_campo3 & "]"

Aqui deberia hacer algo pero no se el qué, porque de esta forma solo me muestra un solo registro. Y hay registros con más de un tercercampo.

End If

ttabla.Close
Set ttabla= Nothing
base.Close
Set base = Nothing

End Function
¿como puedo hacer para que si la sentencia sql devuelve más de un valor los añada? Porque de esta forma solo me devuelve el primero que encuentra.

Muchas gracias.
__________________
Un saludo, MeXiCaN :golpeado: :adios:

Poco es tanto, cuando poco necesitas. E.Bunbury

Siempre que haya una causa noble por la que luchar, siempre habrá ladrones que la apoyarán.
  #2 (permalink)  
Antiguo 16/12/2005, 18:22
Avatar de Frehley  
Fecha de Ingreso: junio-2005
Ubicación: Somewhere between Heaven and Hell
Mensajes: 415
Antigüedad: 18 años, 10 meses
Puntos: 0
Proba esto:

While not ttabla.eof
If ttabla.RecordCount < 1 Then
Añadir = palabras & " " & "[Sin Concordancia]"
Else
Añadir = palabras & " " & "[" & campo_campo3 & "]"
doevents
wend

No estoy seguro si es lo que pedis, pero espero te ayude, cualquier cosa avisa.

Salu2!
__________________
diegoz.com.ar
  #3 (permalink)  
Antiguo 16/12/2005, 19:13
Avatar de hernanmdq  
Fecha de Ingreso: julio-2005
Ubicación: Argentina - Entre Rios
Mensajes: 167
Antigüedad: 18 años, 9 meses
Puntos: 1
Personalmente no termino de enterder el problema, capas si nos cuentas mas sobre la estructura de la tabla, podamos ayudarte. Salu2 y suerte
__________________
| Codigo Geek | Blog de Cine |
  #4 (permalink)  
Antiguo 17/12/2005, 05:17
Avatar de MeXiCaN  
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona - España , Morelia - México
Mensajes: 162
Antigüedad: 19 años, 10 meses
Puntos: 0
Estrucutura de la tabla

campo1, campo2, campo3, campo4

Cita:
Public Function Añadir(palabras As String) As String

Dim base As Database
Dim ttablaAs Recordset
Dim campo3 As Field

Set base = OpenDatabase(App.Path & "\basededatos.mdb")
Set tmiha = base.OpenRecordset("SELECT * FROM tabla WHERE campo1='" & (LCase(palabras)) & "'")
Set campo3 = ttabla.Fields("campo3")

If ttabla.RecordCount < 1 Then
Añadir = palabras & " " & "[Sin Concordancia]"
Else
Añadir = palabras & " " & "[" & campo3 & "]"

Aqui deberia hacer algo pero no se el qué, porque de esta forma solo me muestra un solo registro. Y hay registros con más de un tercercampo.

End If

ttabla.Close
Set ttabla= Nothing
base.Close
Set base = Nothing

End Function
Resulta que la sentencia SQL puede tener varios campo tres. EJ.

campo1 campo2 campo3 campo4
1 casa 1 roja
2 casa 1 azul
3 autopista 1 grande
4 autopista 1 pequeña
5 botella 1 tequila
6 autopista 1 llena

ejecutamos sentencia SQL

select * from tabla where campo1 = casa

Resultados:

casa [roja][azul]

Hasta ahora solo consigo mostar esto:

casa [roja]

¿como hago para mostrar el/los resultado/s que me falta/n?

Muchas GRacias
__________________
Un saludo, MeXiCaN :golpeado: :adios:

Poco es tanto, cuando poco necesitas. E.Bunbury

Siempre que haya una causa noble por la que luchar, siempre habrá ladrones que la apoyarán.
  #5 (permalink)  
Antiguo 19/12/2005, 04:35
Avatar de MeXiCaN  
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona - España , Morelia - México
Mensajes: 162
Antigüedad: 19 años, 10 meses
Puntos: 0
ok, ya lo arreglé. Gracias a Frehley. Tuve que modificar unas cosillas pero ya esta.
__________________
Un saludo, MeXiCaN :golpeado: :adios:

Poco es tanto, cuando poco necesitas. E.Bunbury

Siempre que haya una causa noble por la que luchar, siempre habrá ladrones que la apoyarán.

Última edición por MeXiCaN; 19/12/2005 a las 05:52
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:04.