Professional Documents
Culture Documents
NET
Objetos ADO.NET
Objetivo ADO.net = puente entre objetos .net y base de datos
Clase DataSet
La clase clave es DataSet (en el espacio de nombres System.Data)
DbCommand y DbConnection
El objeto DbConeection representa una conexión a un origen de datos.
Objeto DataAdapter
Se utiliza para mediar entre DataSet y la base de datos. Disocia conjunto de
datos de base de datos.
Esto permite que un solo conjunto de datos represente a más de una base
de datos.
.NET ofrece diferentes versiones del objeto DataAdapter para usarlo con
diferentes proveedores de datos (uno para Sql Server, otro para Ole DB
como access…)
Objeto DataReader
Es una alternativa al conjunto de datos.
Ofrece acceso sólo conectado a la base de datos.
Este objeto es ligero, ideal para rellenar una página con datos de lectura.
Tb nos ofrece métodos para extraer datos a medida que se van recorriendo
como GetBytes, GetData, GetName…
Ejemplo ADO.NET
• Creamos el DataSet
Solución
protected void Page_Load(object sender, EventArgs e)
{
//Creamos una cadena de conexión y una cadena de comando
string connectionString =
"Data Source=SONY290;Initial
Catalog=Northwind;Persist Security Info=True;User
ID=sa;Password=stersol";
string commandString =
"Select * from Customers";
//Pasamos las cadenas al constructor del SqlDataAdapter
SqlDataAdapter dataAdapter =
new SqlDataAdapter(commandString,
connectionString);
Usando DataReader
Para recuperar un conjunto de registros y mostrarlos podemos ganar
eficienca con un objeto SqlDataReader
Solución
protected void Page_Load(object sender, EventArgs e)
{
// crea la cadena de comando y de conexión
string connectionString =
"Data Source=SONY290;Initial
Catalog=Northwind;Persist Security Info=True;User
ID=sa;Password=stersol";
// abre la conexión
try
{
// open the connection
conn.Open();
command.ExecuteReader(CommandBehavior.CloseConnection);
}
finally
{
conn.Close(); // se asegura de cerrar la conexión
}
La primera representará los pedidos y mostrará cinco pedidos cada vez con
un botón para seleccionar un pedido determinado.
Tercera rejilla
Necesitamos
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text; // necesrio para StringBuilder
using System.Data.SqlClient; // necesario DataAdater
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
}
private DataSet CreateDataSet()
{
// connection string to connect to the Orders Database
string connectionString =
"Data Source=SONY290;Initial Catalog=Northwind;Persist
Security Info=True;User ID=sa;Password=stersol";
command2.CommandText = s2.ToString();
dataRelation =
new System.Data.DataRelation(
"OrdersToDetails",
dataColumn1,
dataColumn2);
dataRelation =
new System.Data.DataRelation(
"ProductIDToName",
dataColumn1,
dataColumn2);
return dataSet;
} // end createDataSet
Ejemplo BugTrackerbyhand
Nosotros queremos crear una base de datos con una tabla para guardar los
datos de nuestros clientes interesados.