Visual Basic - Buenas tardes.necesito ayuda

Life is soft - evento anual de software empresarial
 
Vista:

Buenas tardes.necesito ayuda

Publicado por Javier (3 intervenciones) el 15/05/2006 21:45:31
hola a todos, les escribo xq me han pedido que realice un vinculo entre una base de datos en SQL y un programa en VB 6.0. La verdad que yo se programar en C y C++ pero jamas use el vb. Me he puesto con lo basico y ya tengo bastante claro como es esto pero no se como hacer para leer de una base de datos de sql alguna celda, columna o lo que fuere.
Le agradeceria mucho si me respondieran a la brevedad ya que es importante el tiempo...

A la espera de una respuesta

C. Javier Fileiv
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Buenas tardes.necesito ayuda

Publicado por Matías Freire (421 intervenciones) el 16/05/2006 15:04:53
Hola Javier...

Mira, para hacer una conexión a una DB en VB te recomiendo que utilices ADO.
ADO es una librería que te provee de un grupo de objetos con los que podrás acceder fácilmente a una BD, ya sea de Access, SQL Server, FOX, Oracle, y otras tantas. Para poder utilizarla, primero debes "referenciarla" desde Proyecto / Referencias... Allí buscas "Micorsoft ActiveX Data Objects 2.x Library" (donde 2.x puede ser 2.0, 2.1, 2.5, 2.6, 2.7, 2.8). Una vez hecho esto, debes establecer una conexion con la base de datos. Para ello tienes el objeto Connection. Ejemplo (para una base Access)

'Esta variable debe ser global al módulo en el que estás
Dim cn As New ADODB.Connection

Private Sub ConectarBase
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\MiBase.mdb;Jet OLEDB:Database Password=MiPassword"

cn.Open
End Sub

Para una base SQLServer sería:

Private Sub ConectarBase
Dim cn As New ADODB.Connection
cn.ConnectionString = "Provider=SQLOLEDB.1;Password=MiPassword;Persist Security Info=True;UID=MiUsuario;Initial Catalog=MiBase;Data Source=MiServidorSQL"

cn.Open
End Sub

Ahora sólo resta poder hacer consultas SQL para trabajar con los datos. Esto lo haces a través del objeto rercordset, que tiene un método "Open" (los parámetros que te vana interesar ahora son la consulta y la conexion)con el cual ejecutas una consulta SQL, y te devuelve los resultados.En un recordset se recorren secuencialmente los registros devueltos por la consulta a través de los métodos "MoveFirst", "MoveLast", "MoveNext", y "MovePrevious". Una vez devueltos los datos, el objeto recordset tiene una propiedad "Fields", la cual es una colecion de objetos "Field" los cuales representan a cada una de las columnas de los registros. Ejemplo

Private Sub consultaSQL

Dim rs as New ADODB.Recordset

rs.open "SELECT Codigo, Detalle, Precio FROM Articulos", cn

'EOF me dice si está al final del recordset (si el recordset está vacío
'significa que está en el final, y también se pone en true)

Do While rs.EOF = false

msgbox rs.Fields("Codigo") & " " & rs.Fields("Detalle")
'Me muevo al próximo registro
rs.MoveNext
Loop

End Sub

Bueno Javier... más allás de esto en un foro no puedo. Cualquier cosa mándame un mail y te paso un pequeño ejemplo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar