UNIDAD 5: VBSCRIPT INTRODUCION A LAS BASES DE DATOS

TEMA 7: CONSULTA SQL SELECT VISUAL BASIC SCRIPT


Existen una serie de operaciones y procesos que son muy comunes contra una tabla en una base de datos en disco la mas comun es desplegar todos los renglones de la tabla que estan almacenados en disco, a este proceso le llamaremos consulta o despliegue (muy original).

El procedimiento que se intentara seguir cuando se construya un programa asp que tenga que manipular una tabla en disco debera seguir los siguientes pasos:


1.- Crear una conección o enlace a la base de datos.

2.- Abrir la conección a la base de datos.

3.- Crear un RECORDSET

4.- Abrir o cargar el Recordset

5.- Procesar el Recordset ( aqui y en este momento es donde se manipulan los datos ya sea despliegue, eliminacion, edicion, etc)

6.- Cerrar y liberar el Recordset

7.- Cerrar y liberar la conección o enlace a la base de datos.


Codigo prog18.html


FORMA HTML prog18

desplegar toda la base

corrida prog18.html

image124.jpg

programa18.asp


<%

' creando enlace o coneccion a base de datos

set coneccion=Server.CreateObject(“ADODB.Connection”)

coneccion.Provider=“Microsoft.Jet.OLEDB.4.0”

' abriendo la base de datos

coneccion.Open “c:/progfacil/tusitio/mibase.mdb”

' creando el recordset

set tabla=Server.CreateObject(“ADODB.recordset”)

' cargando el recordst con la tabla en disco

tabla.Open “mitabla”, coneccion

' construyendo tabla html

Response.Write ”<TABLE Border=1 CellPadding=5>” & vbNewLIne

Response.Write ”<TR>” & vbNewLine

'COUNT de RECORDSET nos indica cuantas columnas existen

' pero para circular entre ellas recordar que la primera es 0(cero)

For col = 0 To tabla.Fields.Count-1

' estamos en primer renglon de tabla o recordset, estamos sacando encabezados de la tabla

'usando la propiedad NAME del RECORDSET

Response.Write ”<TH>” & tabla.Fields(col).Name & ”</TH>” & vbNewLine

Next

Response.Write ”</TR>” & vbNewLine

'vaciando el resto del recordset en memoria a la tabla html

'esto se hace renglon por renglon y usando propiedad value de RECORDSET

Do Until tabla.EOF

Response.Write ”<TR>” & vbNewLine

For col = 0 To tabla.Fields.Count-1

Response.Write ”<TD>” & tabla.Fields(col).Value & ”</TD>” & vbNewLine

Next

Response.Write ”</TR>” & vbNewLine

tabla.MoveNext

Loop

Response.Write ”</TABLE>” & vbNewLine

'no olvidar cerrar tabla y coneccion y liberar memoria servidor

tabla.Close

set tabla = nothing

coneccion.Close

set coneccion = nothing

%>


notas:

1.- Se sigue el procedimiento generico para procesar tablas usando ADO's en ASP-Vbscript.

2.- Tomar nota como se hace una referencia a la base de datos, esto es open c:/progfacil/tusitio/base.mdb ( ojo con las diagonales)

3.- Cuando se abre la tabla en disco (TABLA.OPEN) el parametro entre comillas debera ser el nombre de la tabla, seguida del objeto enlace o conección que le indica en donde se encuentra.

Recordar que este TABLA.OPEN tambien carga el RECORDSET.

4.- Como se va a desplegar los datos en una tabla.html, se empieza construyendo esta ultima(la tabla html).

5.- RECORDSET tiene varias caracteristicas:

5.1.- Primero hay un apuntador interno que esta circulando por todos los renglones del recordset

5.2.- El primer renglon del recordset (renglon 0), tiene cargado el nombre de los campos.

5.3.- Tambien la primera columna (FIELD) es la cero.

5.4.- Existen dos caracteres especiales y muy utiles para procesar el recordset ellos son BOF (before of file) y EOF (end of file).

5.5.- Recordar que existen muchas propiedaes y metodos de RecordSet( ver apendice a final de UNIDAD) de las cuales se usan algunas como COUNT, MOVENEXT, etc.

6.- Cuando se creo el recordset el apuntador de renglones quedo apuntando al renglon cero en el recordset este renglon cero tiene almacenado los nombres de las columnas(clave, nombre, edad)

Para desplegarlos usamos un ciclo for, que para nuestro ejemplo debiera ser for col= 0 to 2 (recordar que la primera columna es la cero), pero es mejor usar la propiedad COUNT-1 de FIELDS, para que sea el vbscript quien la calcule y ademas ustedes empiezen a practicar algunos metodos de estos objetos ADO.

7- Despues se esta usando un ciclo DO UNTIL tabla.eof – loop para procesar o pasearnos por todos los renglones de la tabla.

Para movernos de renglon a renglon usamos un tabla.movenext al final del do until loop.

8.- Tambien dentro del do until loop, estamos usando un ciclo for, para ir procesando(desplegando) cada columna o field del renglon.

Otra vez, el do until loop es para movernos de renglon a renglon y el for es para movernos de columna a columna.

9.- Al final cerramos la tabla y el enlace o conección y liberamos la memoria del recordset y el enlace cargandolas con NOTHING, esto es para hacer feliz al servidor de paginas y a su seguro servidor lauro.

Corrida prog18.asp:

image125.jpg

tareas programacion vsbscript :

1.- construir y desplegar una primera base de datos que contenga la primera tabla que diseñarón en el tema de tablas.

2.- Construir una segunda base de datos que contenga cuando menos tres de las tablas ya diseñadas y desplegar cualquiera de ellas usando una sola forma html, donde el usuario selecciona cual quiere desplegar.

Politica de Privacidad