Retroceder   Foros del Web > Temas generales de computación > Programación > Visual Basic

Respuesta
 
Herramientas Desplegado
Antiguo 21-abr-2008, 08:00   #1 (permalink)
chiribillo ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 4
Funcion para obtener el recordset de una consulta sql o access

Buenas!!!!

Estoy haciendo un pragrama con vb6 i tengo dos conexiones a bases de datos. Una en acces 97 y obra en sql server 2000.
Lo que necesito es hacer una función que me devuelva un recordset, pero la funcion tiene que ser la misma para access 97 que para sql, y no se como hacerlo.
Algien me puede ayudar porfavor ????

Última edición por chiribillo; 21-abr-2008 a las 09:25.
chiribillo está desconectado   Responder Citando
Antiguo 21-abr-2008, 10:40   #2 (permalink)
Avellaneda tiene algunos puntos positivos de karma
 
Avatar de Avellaneda
 
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 805
Re: Funcion para obtener el recordset de una consulta sql o access

Buenas!!!!

Mira, pon esta función en un módulo .bas

Código:
Public Function ConRS(ByVal cn As ADODB.Connection, Sql As String) As ADODB.Recordset
Dim rs As New ADODB.Recordset
With rs
    .ActiveConnection = cn
    .CursorType = adOpenStatic
    .CursorLocation = adUseClient
    .Open Sql
End With
Set ConRS = rs
End Function
y la llamas así, una vez abierta la conexion (Access o Sql Server) p.e. para mostrar los datos en un control DataGrid:

Set DataGrid1.DataSource = ConRS(conex, "Select * From Tabla1")

Un saludo!
Avellaneda está desconectado   Responder Citando
Antiguo 23-abr-2008, 07:40   #3 (permalink)
chiribillo ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 4
Re: Funcion para obtener el recordset de una consulta sql o access

Muchas gracias creo que esto me sirve!!!!!
chiribillo está desconectado   Responder Citando
Antiguo 24-abr-2008, 08:00   #4 (permalink)
chiribillo ha deshabilitado el karma
 
Fecha de Ingreso: abril-2008
Mensajes: 4
Re: Funcion para obtener el recordset de una consulta sql o access

Hola,

Tengo alguna duda sobre la funcion:

Para conectar con las bases de datos lo hago de la siguiente forma:

SQL Server

Código:
comoconecta = "Provider=SQLOLEDB; " & "Initial Catalog=" & NombreBD & "; " & "Data Source=(local); " & "integrated security=SSPI; persist security info=True;"
Ado_BD.Open comoconecta

Access

Código:
Dim nombase As Database
Set Ado_Rc0 = ObtenerRecordset(sql2, comoconecta, nombase)
Entonces como le paso a la función la conexión de access???
chiribillo está desconectado   Responder Citando
Antiguo 24-abr-2008, 10:23   #5 (permalink)
Avellaneda tiene algunos puntos positivos de karma
 
Avatar de Avellaneda
 
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 805
Re: Funcion para obtener el recordset de una consulta sql o access

Cita:
Iniciado por chiribillo Ver Mensaje
Hola,

Tengo alguna duda sobre la funcion:

Para conectar con las bases de datos lo hago de la siguiente forma:

SQL Server

Código:
comoconecta = "Provider=SQLOLEDB; " & "Initial Catalog=" & NombreBD & "; " & "Data Source=(local); " & "integrated security=SSPI; persist security info=True;"
Ado_BD.Open comoconecta

Access

Código:
Dim nombase As Database
Set Ado_Rc0 = ObtenerRecordset(sql2, comoconecta, nombase)
Entonces como le paso a la función la conexión de access???
No lo entiendo muy bien, ¿qué es Ado_BD y cómo lo has declarado?
Igual para Ado_Rc0.

nombase As Database: ¿eso es DAO, no? ¿Dónde abres la BD nombase?

¿Qué hace la función ObtenerRecordset?

Un saludo.
Avellaneda está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 21:42.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93