Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manual Vbnet Adonet
Manual Vbnet Adonet
Fuente microsoft.net
El problema es comunicar un programa o aplicacin con una base de datos y ms que comunicar se pretende que el programa o aplicacin realice una serie de procesos y operaciones con la base de datos o mejor aun con el conjunto de tablas que contiene una base de datos. ADO.NET se encuentra en la biblioteca System.Data.dll, y ofrece clases en espacios de nombres bien diferenciados que se explica a continuacin: System.Data: es el espacio de nombres primario. Dentro de este espacio de nombres tenemos un conjunto de clases que representan, digamos, una base de datos virtual, tablas, filas, columnas, relaciones, etc. Sin embargo, ninguna de estas clases ofrece conexin alguna con un origen de datos, sino que simplemente representan los datos en s mismos.
Pgina 1
Pgina 2
Resumiendo
Objetos de Proveedores de Datos .NET Propsito Objeto SQL Server 7.0 Objeto para un origen o 2000 OLEDB
DataAdapter
Provee conectividad a un Origen de Datos Provee acceso a comandos de Base de Datos como Select, Delete, Insert y Update Provee acceso a datos de solo lectura Utiliza el objeto Connection para enlazar un objeto DataSet con un Proveedor de Datos. Tambin permite actualizar los Datos en el origen a partir de las modificaciones hechas en el DataSet.
SqlDataAdapter
OleDBDataAdapter
Pgina 3
Un DataSet guarda informacin en un entorno desconectado. Despus de que usted establece una conexin con una Base de Datos entonces puede acceder a sus datos. El DataSet es la principal forma de guardar datos cuando usted utiliza ADO.NET El DataSet permite a usted guardar datos que se obtuvieron de un origen de datos. Los datos en un DataSet pueden ser manipulados sin necesidad que el formulario Web mantenga la conexin con el origen de datos. La conexin se reestablece recin cuando usted necesita actualizar los cambios
Los datos siempre viajan en formato XML ASP.NET y ADO.NET transforman en forma automtica XML en un DataSet.
Pgina 4
Propiedades de los controles del formulario Formulario RadioButton1 Text: COMPONENTES ADO NET Name: RBN1 Position:CenterScreen Text: Mostrar todos los pedidos Button1: RadioButton1 Name : btnConectar Name: RBN2 Text : &Conectar Button2: Text: Clientes con Pedidos Name : btnSalir RadioButton3 Text : &Salir Name: RBN2 Label2: Text: Clientes con Pedidos Name : LBLTOT BorderStyle : Fixed3D Imports System.Data Imports System.Data.sqlclient Public Class Form1 'Cadena de Conexin Dim Cn As New SqlConnection _ ("Server=(Local);DataBase=Neptuno;Integrated Security=True") Private Sub btnConectar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConectar.Click Dim Mensaje As String Try Dim Dt As New DataTable 'Tabla en memoria Dim CadSql$ = "Select * From Clientes" 'Cadena SQL 'Abrir el Adaptador de datos con la cadena SQL Dim Da As New SqlDataAdapter(CadSql, Cn)
Pgina 5
End Try End Sub 'PROCEDIMIENTO QUE MUESTRA REGISTROS SQL Public Sub Mostrar(ByVal SqlCad As String) Dim Dt As New DataTable Dim Da As New SqlDataAdapter(SqlCad, Cn) Da.Fill(Dt) Me.DataGridView1.DataSource = Dt Me.LBLTOT.Text = Dt.rows.count End Sub Private Sub RBN1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RBN1.CheckedChanged Dim Cadena$ = "Select * from PEDIDOS" Call Mostrar(Cadena) End Sub Private Sub RBN2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RBN2.CheckedChanged Dim Cadena$ Cadena = "SELECT * FROM PEDIDOS " _ & "WHERE IdCliente IN (SELECT IdCliente FROM CLIENTES) " _ & "ORDER BY IdCliente" Call Mostrar(Cadena) End Sub Private Sub RBN3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RBN3.CheckedChanged Dim STRSQL As String 'Mostrar Facturas por Fechas STRSQL = "SELECT * FROM PEDIDOS " _ & "WHERE FechaPedido BETWEEN '1994/01/01' AND '1995/12/31' " _ & "ORDER BY FechaPedido" Call Mostrar(STRSQL) End Sub End Class
Pgina 6
LPI: SQL SERVER 2008 /Visual Basic 2008 EJERCICIO #2: Desarrolle una aplicacin donde se ingrese el Cdigo de un Producto y Muestre el registro del producto ingresado.
Imports System.Data Imports System.Data.sqlclient Public Class Form2 'Cadena de Conexin Dim Cn As New SqlConnection ("Server=(Local);DataBase=Neptuno;Integrated Security=True") Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click 'Buscar el Cdigo del Producto Dim Dt As New DataTable Dim Criterio As String= "" Criterio = "Select IdProducto,NombreProducto,PrecioUnidad, " _ & "UnidadesEnExistencia,IdCategoria FROM productos " _ & "where IdProducto='" & Me.TXTCOD.Text & "'" Dim Da As New SqlDataAdapter(Criterio, Cn) Da.Fill(Dt) Dim Nr As Integer = Dt.Rows.Count 'cANTIDAD DE REGISTROS If Nr > 0 Then Si HAY REGISTROS Me.TXTDES.Text = Dt.Rows(0)(1) ' FILA COL Me.TXTPRE.Text = Dt.Rows(0)(2) Me.TXTSTK.Text = Dt.Rows(0)(3) Me.TXTCAT.Text = Dt.Rows(0)(4) Me.DataGridView1.DataSource = Dt FORMATO_GRID() Else MessageBox.Show("ERROR!!!CODIGO NO EXISTE") End If End Sub 'PERSONALIZAR EL DATAGRIDVIEW Public Sub FORMATO_GRID() With Me.DataGridView1 .Columns(0).HeaderText = "CODIGO" .Columns(0).Width = 30 .Columns(0).ReadOnly = True 'SOLO LECTURA .Columns(0).Frozen = True 'INMOVILIZAR COLUMNAS .Columns(1).HeaderText = "PRODUCTO" .Columns(1).Width = 200 .Columns(1).ReadOnly = True 'SOLO LECTURA .Columns(2).HeaderText = "PRECIO" .Columns(2).Width = 80 .Columns(2).ReadOnly = True 'SOLO LECTURA .Columns(3).HeaderText = "STOCK" .Columns(3).Width = 60 .Columns(3).ReadOnly = True 'SOLO LECTURA .Columns(4).HeaderText = "IDCAT" .Columns(4).Width = 50 .Columns(4).ReadOnly = True 'SOLO LECTURA End With End Sub
Pgina 7
Propiedades de los controles del formulario ComboBox1: Name : CBOCLIENTES ListBox1: Name : LSTPEDIDOS DataGridView1: Name : DGVDETALLE
Imports System.Data Imports System.Data.sqlclient Public Class Frm3_Clientes Dim Cn As New SqlConnection _ ("Server=(local); DataBase=Neptuno; Integrated Security=True") Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try 'Mostrar el nombre de la Categora al cargarse el Form Dim TabCli As New DataTable Dim Sql$ = "Select IdCliente,NombreCompaia from Clientes" Dim Da As New SqlDataAdapter(Sql, Cn) Da.Fill(TabCli) Me.CBOCLIENTES.DataSource = TabCli Me.CBOCLIENTES.DisplayMember = "NombreCompaia" 'CAMPO A DISPLAYAR Me.CBOCLIENTES.ValueMember = "IdCliente" 'CODIGO KEY Da.Dispose() 'LIBERAR OBJETO Catch ex As Exception Messagebox.Show(ex.Message) End Try End Sub
Pgina 8
DGVPROV
DGVPROD
Pgina 9
Pgina 10
Public Class Frm4_Empleados Dim DS As New DataSet 'CREACION DEL OBJETO DE LA CLASE DATASET Private Sub Frm5_Empleados_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try Dim SQL$ = "Select IdEmpleado, Apellidos from Empleados" Dim Da As New SqlDataAdapter(SQL, CN) Da.Fill(DS, "TabEmp") Me.CBOEMP.DataSource = DS.Tables("TabEmp") Me.CBOEMP.DisplayMember = "Apellidos" Me.CBOEMP.ValueMember = "IdEmpleado" Catch ex As Exception End Try
End Sub Private Sub CBOEMP_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CBOEMP.SelectedIndexChanged
Try Dim SQl$ = "Select * from pedidos " _ & "Where IdEmpleado='" & Me.CBOEMP.SelectedValue & "'" DS = New DataSet 'Instanciar el dataset Dim Da As New SqlDataAdapter(SQl, CN) Da.Fill(DS, "TabPedidos") Me.DataGridView1.DataSource = DS.Tables("TabPedidos") Me.LBLTOT.Text = DS.Tables("TabPedidos").Rows.Count 'cantidad 'Mostrar la Imagen Grfica Dim Cad$ = "Select Foto from Empleados where IdEmpleado='" & _ Me.CBOEMP.SelectedValue & "'" Dim TblG As New DataTable Dim dat As New SqlDataAdapter(Cad, CN) dat.Fill(TblG) Dim Bits As Byte() = CType(TblG.Rows(0)("foto"), Byte()) Dim Offset As Integer = 78 Dim Ms As New MemoryStream Ms.Write(Bits, Offset, Bits.Length - Offset) 'Grabar el Picture Dim Bitmap As New Bitmap(Ms) Ms.Close() Me.PicImagen.SizeMode = PictureBoxSizeMode.StretchImage Me.PicImagen.Image = Bitmap Catch ex As Exception End Try
Pgina 11
LPI: SQL SERVER 2008 /Visual Basic 2008 DataView (Clase): Representa una vista personalizada que puede enlazar datos de un DataTable para
ordenacin, filtrado, bsqueda, edicin y exploracin. Espacio de nombres: System.Data
Imports System.Data Imports System.Data.SqlClient Public Class FrmClientes Dim Cn As New SqlConnection("Server=(local)\sqlExpress;DataBase=Neptuno;Integrated Security=True") Public Function TablaClientes() As DataTable Dim MiTabla As New DataTable Dim Sql$ = "SELECT IdCliente,NombreCompaia,NombreContacto,Ciudad,Pais FROM CLIENTES" Dim Da As New SqlDataAdapter(Sql, Cn) Da.Fill(MiTabla) Return MiTabla End Function Private Sub FrmClientes_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Cuando se carga el formulario a la memoria Try Dim Dt As DataTable = TablaClientes() Me.DGVCLIENTES.DataSource = Dt Catch ex As Exception End Try End Sub Private Sub RBNCOD_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RBNCOD.CheckedChanged Dim MiDataview1 As New DataView 'Crear el objeto que hace referencia al dataview Dim Dt1 As DataTable = Me.TablaClientes() MiDataview1 = Dt1.DefaultView 'Pasar de la tabla a la vista MiDataview1.Sort = "IdCliente" 'Ordenarlo por Cdigo del cliente Me.DGVCLIENTES.DataSource = MiDataview1 'Origen de datos es la Vista Me.LBLTOT.Text = MiDataview1.Count 'CANTIDAD DE REGISTROS End Sub
Pgina 12
Pgina 13