Professional Documents
Culture Documents
Microsoft ADO.NET
Descripcin
Introduccin a ADO.NET
DataReader
Slo lectura
Desconectado
Conectado
Acceso ms lento
Acceso ms rpido
Codificacin manual
Los estudiantes:
Tiempo: 5 minutos
Crear la conexin
Autenticacin
Autenticacin
modo
modomixto
mixto
o
o
Cliente
Autenticacin
Autenticacin
slo
sloWindows
Windows
Servidor
ServidorWeb
Web
Autenticacin
AutenticacinWindows
Windows
Enviar el nombre de
usuario y contrasea
en texto claro.
Servidor
ServidorSQL
SQL
Cada
Cadacuenta
cuentade
deusuario
usuariose
se
agrega
agregaaagrupo
grupologin
loginde
deSQL
SQLServer
Server
No enviar el nombre de
usuario y contrasea.
Enviar slo que el
usuario ha sido
autenticado.
Servidor
ServidorSQL
SQL
Slo
Slolalacuenta
cuentaASPNET
ASPNET
tiene
tieneconcedido
concedidoacceso
acceso
Crear la conexin
Uso de SqlConnection
Dim
Dim strConn
strConn As
As String
String == "data
"data source=localhost;
source=localhost; "" && __
"initial
"initial catalog=northwind;
catalog=northwind; integrated
integrated security=true"
security=true"
Dim
conn
As
New
SqlConnection(strConn)
Dim conn As New SqlConnection(strConn)
string
string strConn
strConn == "data
"data source=localhost;
source=localhost; "" ++
"initial
"initial catalog=northwind;
catalog=northwind; integrated
integrated security=true";
security=true";
SqlConnection
SqlConnection conn
conn == new
new SqlConnection(strConn);
SqlConnection(strConn);
Timeout de conexin
Fuente de datos
Contrasea
Catlogo inicial
Seguridad integrada
Proveedor
ID de usuario
Establecer el modo
de autenticacin
Crear un DataAdapter
Crear un DataSet
Utilizar un DataView
Gestin de errores
Crear un DataAdapter
da.SelectCommand.CommandText;
Establecer las propiedades
InsertCommand, UpdateCommand y
da.SelectCommand.CommandText;
da.SelectCommand.Connection;
DeleteCommand si fuera
necesario
da.SelectCommand.Connection;
Crear un DataSet
DataSet
DataSet ds
ds == new
new DataSet();
DataSet();
da.Fill(ds,
da.Fill(ds, "Authors");
"Authors");
Dim
Dim ds
ds As
As New
New DataSet()
DataSet()
da.Fill(ds,
da.Fill(ds, "Authors")
"Authors")
Acceder a DataTable
ds.Tables["Authors"].Rows.Count;
ds.Tables["Authors"].Rows.Count;
string
string str="";
str="";
foreach(DataRow
foreach(DataRow rr in
in
ds.Tables["Authors"].Rows)
ds.Tables["Authors"].Rows)
{{
str
str +=
+= r[2];
r[2];
str
+=
r["au_lname"];
str += r["au_lname"];
}}
ds.Tables("Authors").Rows.Count
ds.Tables("Authors").Rows.Count
Dim
Dim rr As
As DataRow
DataRow
Dim
str
As
Dim str As String
String
For
Each
r
in
For Each r in __
ds.Tables("Authors").Rows
ds.Tables("Authors").Rows
str
str &=
&= r(2)
r(2)
str
str &=
&= r("au_lname")
r("au_lname")
Next
Next
Crear DataAdapter
Crear DataSet
Utilizar un DataView
Los estudiantes:
Tiempo: 5 minutos
Crear el control
<asp:DataGrid
<asp:DataGrid id="dg"
id="dg" runat="server"
runat="server" />
/>
dg.DataSource
dg.DataSource == ds;
ds;
dg.DataMember
=
"Authors";
dg.DataMember = "Authors";
dg.DataBind()
dg.DataBind();;
Crear un DataAdapter
Crear un DataSet
Crear un DataView
Gestin de errores
La conexin no se abre
Cdigo de ejemplo
Crear relaciones
conn1
conn2
DataSet
Orders
Crear relaciones
Dim
Dim parentCol
parentCol As
As DataColumn
DataColumn == __
ds.Tables("Customers").Columns("CustomerID")
ds.Tables("Customers").Columns("CustomerID")
Dim
Dim childCol
childCol As
As DataColumn
DataColumn == __
ds.Tables("Orders").Columns("CustomerID")
ds.Tables("Orders").Columns("CustomerID")
Crear DataRelation
parentCol
Dim
Dim dr
dr As
As New
New DataRelation
DataRelation __
("name",
("name", parentCol,
parentCol, __
childCol)
childCol)
ds.DataRelations.Add(dr)
ds.DataRelations.Add(dr)
Cdigo de ejemplo C#
Tabla Customers
DataSet
DataRelation
childCol
Tabla Orders
ds.Tables(index).Rows(index).GetChildRows("relation")
ds.Tables(index).Rows(index).GetChildRows("relation")
ds.Tables(index).Rows(index).GetParentRow("relation")
ds.Tables(index).Rows(index).GetParentRow("relation")
ds.Tables[index].Rows[index].GetChildRows("relation");
ds.Tables[index].Rows[index].GetChildRows("relation");
ds.Tables[index].Rows[index].GetParentRow("relation");
ds.Tables[index].Rows[index].GetParentRow("relation");
Orders
Customers
GetChildRows
DataSet
GetParentRow
DataView
DataRowView
CreateChildView
DataSet
Orders
Programticamente:
Crear un DataSet
Crear un DataRelation
Visualmente:
Invocar CreateChildView
Qu es un DataReader?
Crear un DataReader
Qu es un DataReader?
Crear un DataReader
2.2
3.3
4.4
44
55
5.5
66
6.
77
7.
Cdigo de ejemplo
Acceso a campos
Parmetro es la posicin ordinal o nombre del campo
Las funciones Get ofrecen un mejor rendimiento
Do
Do While
While myReader.Read()
myReader.Read()
str
&=
str &= myReader(1)
myReader(1)
str
str &=
&= myReader("field")
myReader("field")
str
&=
myReader.GetDateTime(2)
str &= myReader.GetDateTime(2)
Loop
Loop
Cerrar el DataReader
Cerrar la conexin
while
while (myReader.Read())
(myReader.Read())
{{
str
str +=
+= myReader[1];
myReader[1];
str
+=
myReader["field"];
str += myReader["field"];
str
str +=
+= myReader.GetDateTime(2);
myReader.GetDateTime(2);
}}
Crear el control
<asp:DataGrid
<asp:DataGrid id="dgAuthors"
id="dgAuthors" runat="server"
runat="server" />
/>
Vincular a un DataReader
dgAuthors.DataSource
dgAuthors.DataSource == dr
dr
dgAuthors.DataBind()
dgAuthors.DataBind()
dgAuthors.DataSource
dgAuthors.DataSource == dr;
dr;
dgAuthors.DataBind();
dgAuthors.DataBind();
Los estudiantes:
Tiempo: 5 minutos