Inicio > Programación > nicoperu > visual basic 6 + sql server 2000

visual basic 6 + sql server 2000

Experto:
Usuario:
Fecha: 07/09/2008
Valoración: (5,00 sobre 5) Categoría: Programación
07/09/2008
bowness, usuario preguntando en Programación
Usuario
Hola experto!!
Mi cuestión es la siguiente: tengo hecho un programa de gestión en visual basic 5 y base de datos Access'97, porque se suponía que serían pocos los usuarios que accederían a consultar y crear registros. La realidad ha sido otra y la aplicación es lentísima, con lo que pensé que sería mejor pasarme a visual basic 6 y sql server 2000.
No quisiera (inocente de mí) tener que cambiar demasiado código. Para que te hagas una idea, parte de mi código a la hora de abrir una tabla de una base de datos, es el siguiente:

public sub gpabrir(eldyna as recordset, criterio as string, nombd as string, ack as boolean, mensaje as string)
dim camino as string
on error goto err
camino=rutabd & nombd
set bdatos= opendatabase(camino)
set eldyna=bdatos.openrecordset (criterio, dbopendynaset)
exit sub

err:
ack=false: mensaje="Error en la apertura del fichero " & ucase(eldyna.name)

end sub



donde "rutabd" es una variable global que contiene la ruta de la base de datos y "criterio" contiene la sentencia sql que le paso para abrir (tipo Select * from Clientes where ...").

He visto que muchos insertan un control ADO y realizan una conexión a través del DataEnvironment, pero yo no quisiera eso. Supongo que tendré que crearme alguna conexión tipo ODBC, pero no sé cómo hacer que funcione.

Te agradecería tu ayuda y de antemano, muchas gracias por soportar la parrafada
07/09/2008
bowness, experto respondiendo en Programación
Experto
aqui un codigo para conectarte a una base de datos sql
Public cn As New ADODB.Connection
SERVIDOR = "MiServer"
BASEDATOS = "MiBaseDeDatos"
User = "sa"
Password = ""
sSQLConect = "SERVER=" & Trim(SERVIDOR) & ";DATABASE=" & Trim(BASEDATOS) & ";uid=" & User & ";pwd=" & Trim(Password)
Set cn = Nothing
cn.Provider = "sqloledb"
cn.CursorLocation = adUseClient
cn.Open sSQLConect

luego la variable cn es una conexion que te servira para abrir cualquier tabla de sql

ejm:

dim rs as new recordset
rs.Open "select * from clientes", cn, adOpenKeyset, adLockOptimistic, adCmdText

... y luego este recorset puede servirte para insertar eliminar etc ...
07/09/2008
bowness, usuario preguntando en Programación
Usuario
Excelente. Una fantástica solución.
Enlaces patrocinados