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

VB 6 Y SQL --- no coinciden los tipos

Estas en el tema de VB 6 Y SQL --- no coinciden los tipos en el foro de Visual Basic clásico en Foros del Web. sql = "SELECT TOP 1 Codigo_Clie FROM clientes ORDER BY Codigo_Clie DESC" cm.CommandText = sql cm.Execute tengo esa consulta a la bd, lo que quiero ...
  #1 (permalink)  
Antiguo 26/02/2005, 07:59
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 20 años
Puntos: 4
VB 6 Y SQL --- no coinciden los tipos

sql = "SELECT TOP 1 Codigo_Clie FROM clientes ORDER BY Codigo_Clie DESC"
cm.CommandText = sql
cm.Execute


tengo esa consulta a la bd, lo que quiero es que el resultado de la consulta lo tenga en una variable, por ejemplo al similar a esto que no me funciona

variable = cm.execute

pero me dice que no coinciden los tipos (declaro la variable como string, supongo que tendré que declararla de otra manera que no sé)
  #2 (permalink)  
Antiguo 26/02/2005, 08:07
 
Fecha de Ingreso: septiembre-2004
Mensajes: 171
Antigüedad: 19 años, 7 meses
Puntos: 0
nose si abra otra manera pero ami me enseñaron a guardarlo siempre en un recordset, ya que como el select t puede devolver varios valores pos tendras que tener una variable q los guarde todos y puedas recorrerlos.

dim mirecordset as adodb.recordset

set mirecordset = micon.execute ("SELECT ......")

Usariamos mirecordset.movefirst, mirecordset.movelast,mirecordset.movenext,mirecord set.moveprevious para movernos por los registros devueltos y para sacarlos seria:

mirecordset.fields!nombre_campo

espero q t sirva
  #3 (permalink)  
Antiguo 26/02/2005, 08:22
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 20 años
Puntos: 4
gracias pero no es lo que estaba buscando...

estoy con un proyecto que nos han prohibido utilizar recordsets para hacer todo con consultas sql... :-p :-p :-p


gracias de nuevo
  #4 (permalink)  
Antiguo 26/02/2005, 09:46
 
Fecha de Ingreso: septiembre-2004
Mensajes: 171
Antigüedad: 19 años, 7 meses
Puntos: 0
buf xungo nose, prueba a declarar la variable como variant aber si t funciona pero tampoco se muy bien, yo siempre uso los recordset
  #5 (permalink)  
Antiguo 28/02/2005, 05:57
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 20 años
Puntos: 4
pos tampoco
  #6 (permalink)  
Antiguo 28/02/2005, 06:49
 
Fecha de Ingreso: septiembre-2004
Ubicación: Valencia
Mensajes: 39
Antigüedad: 19 años, 7 meses
Puntos: 0
Si no puedes utilizar RS (cosa que no entiendo, ya que dices para hacer todo con consultas SQL, y un RS no es mas que el envase de la consulta, en fin, a lo que iba).
Puedes crearte un control no visible, por ejemplo el control, y asociar la consulta al .DataSource, y el control almacenará el valor, pero lo dicho, sigo sin entender la prohibición del RS, pues un programa con gestión de BD sin él es impensable, al menos para mi.
Espero que te sirva lo del control oculto.
Saludos
  #7 (permalink)  
Antiguo 28/02/2005, 10:09
 
Fecha de Ingreso: mayo-2004
Mensajes: 398
Antigüedad: 20 años
Puntos: 4
Bueno solucionado... ya no le doy más vueltas, que igual ni se puede... con el recordset al final.

Lo que he puesto...

Set rcs = cn.Execute("SELECT TOP 1 Codigo_Clie FROM clientes ORDER BY Codigo_Clie DESC")

ultimo_registro = rcs("Codigo_Clie")


Un saludo, muchas gracias a todos
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 09:52.