El ADO.NET es un conjunto
de componentes del software que pueden ser usados por los
programadores para acceder a datos y a servicios de datos. Es una parte de la
biblioteca de clases base que están incluidas en el Microsoft .NET Framework. Es comúnmente usado por
los programadores para acceder y para modificar los datos almacenados en
un Sistema Gestor de Bases de Datos Relacionales, aunque también
puede ser usado para acceder a datos en fuentes no relacionales
Arquitectura
ADO.NET consiste en dos partes primarias:
Data provider
Estas clases proporcionan el acceso a una
fuente de datos, como Microsoft SQL Server, Access y Oracle. Cada fuente de datos tiene su propio
conjunto de objetos del proveedor, pero cada uno tiene un conjunto común de
clases de utilidad:
§
Command: Usado para realizar
alguna acción en la fuente de datos, como lectura, actualización, o borrado de
datos relacionales.
§
Parameter: Describe un simple
parámetro para un command. Un ejemplo común es un parámetro para
ser usado en un procedimiento almacenado.
§
DataAdapter: "Puente"
utilizado para transferir data entre una fuente de datos y un objeto DataSet
§
DataReader: Es una clase usada
para procesar eficientemente una lista grande de resultados, un registro a la
vez.
DataSets
Los objetos DataSets, un grupo de clases
que describen una simple base de datos relacional en memoria.
§
Un objeto DataSet representa un esquema (o una base de
datos entera o un subconjunto de una BD). Puede contener las tablas y las
relaciones entre esas tablas.
§
Un objeto DataTable representa una sola tabla en la base
de datos. Tiene un nombre, filas, y columnas.
Un DataSet es llenado desde una base de
datos por un DataAdapter cuyas propiedades Connection y Command que han sido
iniciados
Datatalbe.fill (dataset,”NobreTabla”)
El método Fill del DataAdapter se
usa para llenar un DataSet con los resultados de la consulta
realizada
El método Fill utiliza
el objeto DataReader de forma implícita para devolver los
nombres y tipos de columna utilizados para crear las tablas de DataSet,
así como los datos para llenar las filas de las tablas de DataSet.
Instrucciones SQL que se
utilizan para interactuar con las base de datos en Vb . Net
INSERTAR (GUARDAR DATOS)
"insert into Nombre_de_tabla (Cod_cod,nombre,) values
('" & txtCodigocobrador.Text & "'
,'" & txtNombre.Text & "')"
En el primer parentesis se colocan los campos
que forman la tabla, despues la palabra values (VAlores)y a seguida escribimos
los nombre de los controles que contienen los valores a ingresar tomando en cuanta que estos son escritos en
el medio de los siguintes caracteres '" & & "', quedando
de la siguiente forma '" & txtNombre.Text & "'
Ej.:
Private Sub cmdGuardar_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles cmdGuardar.Click
'UTILIZAREMOS el control de errores usando la instruccion
'try
Try
'comprobamos
nuevamente que la conexion esta cerrada
'si lo esta la abrimo
If Not con.State =
ConnectionState.Open Then
con.Open()
End If
'luego declaramos un objeto del tipo comando(instrccion)
Dim
cmd As New
SqlCommand
'asignamos
la conexion que utilizara el comando
cmd.Connection = con
'luego
asignamos la cadena de texto del comando
cmd.CommandText = "insert into usuario (id,nombre,apellido) values
('" & txtCodigo.Text & "','"
& txtNombre.Text & "','"
& txtApellido.Text & "')"
'luego
ejecutamos la orden del comando mediante el Executenonquery
cmd.ExecuteNonQuery()
'si todo
esta correcto enviamo un mensaje
MessageBox.Show("Datos
Guardado", "DATOS",
MessageBoxButtons.OK, MessageBoxIcon.Information)
'simularemos el boton limpiar
cmdLimpiar.PerformClick()
'mostramos
los datos guardado
MostrarDatos()
'asignamos
el focu al control txtcodigo
txtCodigo.Focus()
Catch ex As Exception
'en esta parte manejamos el error en caso de que se produsca
MessageBox.Show(ex.Message)
End Try
End Sub
UPDATE (ACTUALIZAR)
"update Nombre_de_tabla set Cod_cod='"
& txtCodigocobrador.Text & "',nombre='"
& txtNombre.Text & "' where
Cod_cod=" & txtCodigocobrador.Text
Se
utiliza la clausula update (actualizar) seguida del nombre de la tabla,y luego
utilizamos la palabra set a seguida del nombre del campo seguido del nombre del
control que contiene el valor a actualizar, igualemente entre los caracteres '" &
& "' Ej.: Cod_cod='"
& txtCodigocobrador.Text & "'
Recuerden que cada campo con su respectivo valor debe ir
separado por una coma.
Private Sub cmdActualizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdActualizar.Click
If Not con.State = ConnectionState.Open Then
con.Open()
End If
'declaramso el objeto comando para realizar la accion
Dim cmd As New SqlCommand
'asignamos la conexion que se utilizara
cmd.Connection = con
'el texto con la accion
cmd.CommandText = "update usuario set id='" & txtCodigo.Text & "',nombre='" & txtNombre.Text & "',apellido='" & txtApellido.Text & "' where id=" & txtCodigo.Text
'ejecutamos el comando
cmd.ExecuteNonQuery()
'llamamos el boton de limpiar
cmdLimpiar.PerformClick()
MessageBox.Show("Datos actualizados")
MostrarDatos()
'eejcutamos a ver si todo anda bien hasta aqui
End Sub
DELETE (Eliminar)
"delete from Nombre_de_tabla where Cod_cod="
& intCod
La
instruccion delete segruida la tabla de donse se desea elimkinar el registro y
luego la condicion (where) seguida del campo de busqueda pro el cual se desea
eliminar
Private Sub cmdEliminar_Click(ByVal sender As
System.Object, ByVal e As
System.EventArgs) Handles cmdEliminar.Click
Try
If dgVista.Rows.Count > 0 Then
If dgVista.SelectedRows.Count > 0 Then
Dim intID As
Integer = dgVista.SelectedRows(0).Cells("id").Value
If Not
con.State = ConnectionState.Open Then
con.Open()
End If
Dim cmd As
New SqlCommand
cmd.Connection = con
cmd.CommandText = "delete from usuario
where id=" & intID
cmd.ExecuteNonQuery()
MessageBox.Show("Esta seguro de liminar
este registro", "Datos
irrecuperable", MessageBoxButtons.OK, MessageBoxIcon.Warning)
MostrarDatos()
con.Close()
End If
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Mostar Datos
Debemos agregar un control Datagridview el cual se llamara dgVista
Public Sub
MostrarDatos()
'declaramos
la variable que nos servira para realizar la consulta
'esta sera un sqldataadapter
If Not con.State =
ConnectionState.Open Then
con.Open()
End If
Dim dt As New SqlDataAdapter("select
* from usuario", con)
'luego declaramos un dataset que sera el que maneje los datos
'traidos de
la consulta
Dim ds As New DataSet
'luego
llenamo el dataset utilizando el metodo fill del dataadapter
dt.Fill(ds, "usuario")
'luego le
asignamos el dataset al datagrid para mostrar los datos
'que hay
hasta el momento
dgVista.DataSource = ds
dgVista.DataMember = "usuario"
'luego
cerramos la conexion
' con.Close()
'
End Sub
REALIZAR UNA BUSQUEDA EN UNA BASE DE DATOS
REALIZAR UNA BUSQUEDA EN UNA BASE DE DATOS
Private Sub txtBuscar_TextChanged(ByVal sender As
System.Object, ByVal e As
System.EventArgs) Handles txtBuscar.TextChanged
Try
If Not con.State =
ConnectionState.Open Then
con.Open()
End
If
'delcramos
el dataadapter con el que se realizara la buscaqueda
Dim da As New
SqlDataAdapter("select * from usuario where
nombre like '%" & (txtBuscar.Text) & "%' or apellido like '%" &
(txtBuscar.Text) & "%'", con)
'utilizamos el comodin (%) para que la busqueda se raelice
con cualquier coincidencia en el campo
Dim ds As New DataSet
da.Fill(ds, "usuario")
dgVista.DataSource = ds
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Moverse por las filas del datagrid
Private Sub
dgVista_RowHeaderMouseClick(ByVal sender As Object, ByVal e As
System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles
dgVista.RowHeaderMouseClick
Try
' ha
continuacion comprobamos si hay algun regitro cargado en la grilla
If
dgVista.Rows.Count > 0 Then
'si
es mayor que cero es porque hay registros
'entocnes
comprobamos si hay registros seleccioandos
If
dgVista.SelectedRows.Count > 0 Then
'delcaramos
uan variable para almacenar el valor del campo
'principal
Dim intId As
Integer = dgVista.SelectedRows(0).Cells("id").Value
'luego declaramos un datadapter para manejar los
diferentes campos
Dim da As New
SqlDataAdapter("select * from usuario where
id=" & intId, con)
'declaramso un datatable para manipular cada uno
de los campos
Dim
dt As New
DataTable
'llenamos
el datatable con el datadapter
da.Fill(dt)
'asiganamos
a cada textbox cada valor de la tabla
txtCodigo.Text = dt.Rows(0).Item("id")
txtNombre.Text = dt.Rows(0).Item("nombre")
txtApellido.Text = dt.Rows(0).Item("apellido")
End If
End If
Catch ex As Exception
MessageBox.Show(ex.Message)
'probamos
a ver si todo esta correcto
End Try
No hay comentarios:
Publicar un comentario