El primer bloque de código del siguiente ejemplo es típico de un tipo de aplicación ASP que utiliza ADO para leer y manipular un conjunto de registros devuelto por una única consulta SQL. Utiliza el objeto ADO Recordset para leer los registros de datos devueltos por la base de datos de ejemplo Northwind proporcionada con Microsoft Access. El código estará contenido en un archivo con extensión .asp.
[Visual Básico]
< %@LANGUAGE=VBSCRIPT% >
<!
Este ejemplo de ASP utiliza ADO para leer registros de una base de datos e imprimir dos
campos de todos los registros devueltos a una página ASP. La conexión a la base de datos Northwind se realiza a través de una fuente de datos del sistema ODBC (DSN.
>
<html>
<cuerpo>
<%
tenue ADOconn, ADOrs, sqlstr
sqlstr="SELECCIONAR * DE Empleados;"
establecer ADOconn = Server.CreateObject("ADODB.Connection")
ADOconn.Open "DSN = Prueba"
establecer ADOrs = ADOconn.execute(sqlstr)
si ADOrs.BOF y ADOrs.EOF entonces ' La consulta no devolvió ningún registro.
Response.Write ("Sin registros").
demás
ADOrs.MoveFirst
Hacer mientras no ADOrs.EOF
Response.Write(ADOrs("Nombre") & " " _
& ADOrs("Apellido") & "<br>")
ADOrs.MoveNext
Bucle
Response.Write("<p>Fin de los datos.")
terminar si
ADOrs.cerrar
establecer ADOrs = nada
%>
</cuerpo>
</html>
El siguiente ejemplo ilustra los cambios mínimos necesarios para convertir el ejemplo anterior en una aplicación ASP.NET. La mayoría de los cambios son necesarios para cumplir con la nueva sintaxis de Visual Basic. A este archivo se le puede cambiar el nombre con una extensión de archivo .aspx y se ejecutará con ASP.NET. Las líneas de código modificadas se muestran en negrita. Observe que la directiva <%@ Page > con el atributo aspcompat=true se agregó en la primera línea.
[Visual Básico]
< %@Page aspcompat=true Idioma = VB%>
<!
Este ejemplo utiliza ADO para leer registros de una base de datos e imprimir dos
campos de todos los registros de la base de datos a una página ASP.NET.
La base de datos se encuentra en el servidor y la conexión se realiza a través de una fuente de datos del sistema ODBC (DSN.
>
<html>
<cuerpo>
<%
objConn tenue, rs, sqlstr
sqlstr="SELECCIONAR * DE Empleados;"
objConn = Server.CreateObject("ADODB.Connection") ' Conjunto eliminado.
objConn.Open("DSN=TEST") ' Se agregaron paréntesis.
rs = objConn.execute(sqlstr) 'Se eliminó la declaración de configuración.
Response.Write("<p>Prueba ADO</p>")
si rs.BOF y rs.EOF entonces ' La consulta no devolvió ningún registro.
Response.Write("Sin registros")
demás
rs.MoveFirst
Hacer mientras no rs.EOF
'Especifique la propiedad Valor.
Response.Write(rs("Nombre").Valor _
& " " & rs("Apellido").Valor & "<br>")
rs.MoverSiguiente
Bucle
Response.Write("<p>Fin de los datos")
terminar si
rs.cerrar
rs = nada 'Se eliminó la declaración establecida.
%>
El siguiente ejemplo es una aplicación ASP.NET que utiliza ADO.NET para leer registros de la misma base de datos Northwind que el ejemplo anterior. El resultado generado por este código es equivalente al resultado del ejemplo anterior y se ha modificado para cumplir con la convención de bloques de código ASP.NET.
El ejemplo crea un objeto ADO.NET DataSet, que en este caso contiene una tabla de datos que se puede utilizar de forma muy similar a un conjunto de registros ADO. Tenga en cuenta que un conjunto de datos puede estar compuesto por una o más colecciones de DataTables, DataRelations y Restricciones que conforman una base de datos residente en memoria, por lo que los conjuntos de datos ADO.NET son mucho más flexibles que los conjuntos de registros ADO.
Para utilizar ADO.NET, es necesario importar los espacios de nombres System.Data y System.Data.OleDb. Si la fuente de datos es una base de datos de SQL Server, importe el espacio de nombres System.Data.SqlClient en lugar de System.Data.OleDb. Para obtener más información sobre el uso de ADO y el objeto de conexión del proveedor de datos SQL .NET, consulte Administrar conexiones.
[Visual Básico]
< %@Importar espacio de nombres="System.Data"%>
< %@Importar espacio de nombres="System.Data.OleDb"%>
<!
Este ejemplo utiliza ADO.NET para leer registros de una base de datos e imprimir dos
campos de todos los registros devueltos a una página ASP.NET.
se encuentra en el servidor local.
>
<html>
<Lenguaje de script=VB Runat=Servidor>
Sub Page_Load (Remitente como objeto, e como EventArgs)
Atenuar MyConnection como OleDbConnection
Atenuar MyCommand como OleDbDataAdapter
atenuar MyDataset como conjunto de datos
atenuar MyTable como tabla de datos
bucle1 tenue, numrows como entero
dim sqlstr como cadena
sqlstr = "SELECCIONAR * DE Empleados;"
' Crea una conexión a la fuente de datos.
MiConexión = Nueva OleDbConnection("Proveedor=SQLOLEDB;" _
& "servidor=localhost;"Seguridad integrada=SSPI;" _
& "Catálogo inicial=Northwind")
' Crea un objeto Comando con la declaración SQL.
MyCommand = New OleDbDataAdapter(sqlstr, MyConnection)
'Llena un conjunto de datos con los datos devueltos por la base de datos.
Mi conjunto de datos = Nuevo conjunto de datos
MiComando.Fill(MiConjunto de Datos)
' Crea un nuevo objeto DataTable y le asigna
' la nueva mesa de la colección Tables.
MiTabla = Nueva tabla de datos
MiTabla = MiConjunto de Datos.Tablas(0)
' Encuentra cuantas filas hay en la colección Filas
' del nuevo objeto DataTable.
números de filas = MiTabla.Filas.Contar
Si números = 0 entonces
Response.Write("<p>Sin registros.</p>")
Demás
Response.Write("<p>" & Cstr(numrows) & " registros encontrados.</p>")
Para loop1 = 0 A numrows - 1
'Imprime los valores de las dos columnas en el Columnas
' colección para cada fila.
Response.Write(MyTable.Rows(loop1).Item("Nombre") _
& " " & MyTable.Rows(loop1).Item("Apellido") & "<br>")
Siguiente bucle1
Terminar si
Response.Write("<p>Fin de los datos.</p>")
Subtítulo final
</script>
</html>
En situaciones en las que una consulta de base de datos (o incluso una consulta de combinación de varias tablas) devuelve un único conjunto de registros, se puede utilizar una única DataTable (MyTable en este ejemplo) de forma muy similar a un conjunto de registros ADO.
Consulte "Documentación del SDK de NET FRAMEWORK"