jump to navigation

Cargar combos desde una Base de Datos con ADO Febrero 23, 2009

Publicado por lineadecodigo en : ASP , trackback

Si los valores de un combo van a ser variables es recomendable extraer esta información de una base de datos, en vez de tenerlo codificados directamente en nuestro HTML. En este ejemplo vamos a ver como cargar combos desde una Base de Datos con ADO.

La idea es tener almacenada la lista de valores (diferentes opciones) en una tabla de tal manera que a la hora de crear un formulario generaremos dinamicamente la lista de opciones.

La tabla podrá tener la siguiente forma:

DEPORTE
Fútbol
Baloncesto
Atletismo
Voleibol
Gimnasia

Los pasos a seguir para volvar el contenido de esta tabla sobre los combos son los siguientes:

En primer lugar conectarnos a la base de datos que tenga la tabla. Esto lo podemos hacer mediante DSN y sin DSN. Nosotros lo vamos a hacer mediante DSN

  1. Set db = Server.CreateObject("ADODB.Connection")
  2. Dim DB_CONNECTIONSTRING
  3. DB_CONNECTIONSTRING = "DSN=BaseDatosDeportes;"
  4. db.open DB_CONNECTIONSTRING

La conexión a la base de datos la realizamos mediante el objeto Connection.

En segundo lugar crearemos un RecordSet el cual almacenara los datos de la tabla deportes. A este RecordSet debemos de decirle que almacenará todas las filas de la tabla.

  1. set deportes = Server.CreateObject ("ADOBD.RecordSet")
  2. SQLStr = "SELECT * FROM deportes"
  3. deportes.open SQLStr, DB_CONNECTIONSTRING, adOpenStatic, adLockReadOnly, adCmdText

Las constantes adOpenStatic, adLockReadOnly, adCmdText las encontraremos en el archivo adovbs.inc el cual deberemos de incluir en la página donde este el script.

  1. <!-- #include file="adovbs.inc" -->

Como tercer paso recorreremos el RecordSet mientras existan datos. Para ello utilizaremos alguna estructura repetitiva. A la hora de mostrar los datos no solamente escribiremos en pantalla el texto que haya en en RecordSet, sino que habrá que acompañarlo con el texto de creación del combo del formulario, mediante las etiquetas SELECT y OPTION.

  1. <SELECT NAME="deportes">
  2. <%
  3. while not deportes.EOF
  4. Response.Write("<OPTION VALUE='" + deportes("deporte") + "'>")
  5. Response.Write(deportes("deporte") + "</OPTION>")
  6.  
  7. ' Nos desplazamos por el RecordSet
  8. deportes.MoveNext
  9.  
  10. loop
  11. %>
  12. </SELECT>

Solo nos quedará anular los objetos y cerrar las conexiones:

  1. deportes.close
  2. set deportes = Nothing
  3. db.close
  4. Set db = Nothing

Articulos Similares:

|- Descargar el código
|- Reportar error en el código
|- Foro sobre ASP

Enviar entrada por email Enviar entrada por email | Imprimir Imprimir | 2692 visitas

1 Star2 Stars3 Stars4 Stars5 Stars (Todavia sin evaluar)
Loading ... Loading ...

Comentarios»

Todavía no hay comentarios. ¿Quieres ser el primero?




Si tienes dudas sobre ASP no dudes en visitar el Foro sobre ASP.
Imagen CAPTCHA CAPTCHA Audio
Refrescar imagen