Hola en esta ocasión hablaremos un poco de cómo conectarnos a una Base de Datos usando los DataReaders. Y se preguntaran ¿Y los DataSets? Tranquilos luego hablaremos de ellos ya que es una nueva innovación que se incluyo en .Net para el manejo de Datos.
Bueno, entonces empecemos.
Primero lo que necesitamos es declarar los espacios de nombres (namespace) para el manejo de datos. Estos son:
Imports System.Data
‘namespace para trabajar con el manejador de base de datos SQL Server. Contiene clases
‘para trabajar exclusivamente con este manejador
Imports System.Data.SqlClient
Estos namespace deben ir al inicio de la clase de nuestro proyecto, aunque también se pudiera declarar dentro de nuestro código, pero en mi opinión personal suele ser algo no muy apropiado.
Una vez ya declarados los espacios de nombres ahora ya podemos acceder a nuestros datos:
‘nos permite establecer la conexión con la base de datos u origen de datos
Dim cnn as SqlConnection
Dim cmd as SQLCommand
Dim strConexion as String
Dim strQuery as String
‘estableciendo la conexión
strConexion = ”Data Source=localhost; Catalog = MiBaseDatos; Integrated Security = True”
Analicemos la cadena de conexión. Primero le indicamos en el Data Source que utilizaremos un servidor de SQL Server local. El segundo parámetro es la base de datos a utilizar. Y finalmente le indicamos que utilice las credenciales de seguridad integrada de Windows.
Si no utilizamos la seguridad integrada debemos el usuario y contraseña para acceder a la base de datos. Por lo que nuestra cadena quedaría de la siguiente manera:
strConexion = ”Data Source=localhost; Catalog = MiBaseDatos; user id =sa; password=***”
Regresando al código:
Cnn = New SqlConnection(strConexion)
‘abrimos la conexión
cnn.Open()
strQuery = “SELECT * FROM Tabla”
cmd = New SqlCommand(strQuery,cnn)
‘otra manera
‘cmd.Connection = cnn
‘cmd.CommandType = CommandType.Text
‘cmd.CommandText = “SELECT * FROM Tabla”
‘ahora obtenemos realmente los datos
Dim dr as SqlDataReader
dr = cmd.ExecuteReader
If dr.HasRows() then
Do While dr.Read()
‘obtenemos los valores
Loop
End If
‘cerramos la canexion
cnn.Close()
Veamos un ejemplo completo:
1. Agregamos un ListView y un Button en nuestro Form
2. Cambiamos las siguientes propiedades:
View = Details
GridLines = True
FullRowSelect = True
3. Agregamos 3 columnas: Columna1, Columna2, Columna3
4. En el evento Click del botón ponemos el siguiente código:
Dim strConexion as String = “Data Source = localhost; Catalog = MiBD; Integrated Security = True”
Dim strQuery as String = “SELECT * FROM Tabla”
Try
Dim cnn as SqlConnection = New SqlConnection(strConexion)
Dim cmd as SqlCommand = New SqlCommand(strQuery,cnn)
cnn.Open()
Dim dr as SqlDataReader = cmd.ExecuteReader
Do While dr.Read()
Dim ítem as ListViewItem
item = ListView.Items.Add(dr(“Columna1”))
item.SubItems.Add(dr(“Columna2”))
item.SubItems.Add(dr(“Columna3”))
Loop
Catch (ex as Exception)
‘informamos al usuario que ocurrió un error al acceder a la base de datos
Finally
dr.Close()
cnn.Close()
End Try
Suscribirse a:
Enviar comentarios (Atom)


No hay comentarios:
Publicar un comentario