Base de datos
La interfaz de usuario se ha simplificado en Dreamweaver CC y versiones posteriores. Como resultado, es posible que no encuentre algunas de las opciones que se describen en este artículo en Dreamweaver CC y versiones posteriores. Para obtener más información, consulte este artículo.
Una aplicación ASP debe conectar con una base de datos a través de un controlador ODBC (Controlador de conectividad de base de datos abierta, Open Database Connectivity) o de un proveedor OLE DB (Base de datos de vinculación e incrustación de objetos, Object Linking and Embedding Database). El controlador o proveedor actúa como un intérprete que permite que la aplicación web se comunique con la base de datos. La siguiente tabla muestra algunos de los controladores que se pueden utilizar con bases de datos Microsoft Access, Microsoft SQL Server y Oracle:
|
Base de datos |
Controlador de base de datos |
|
Microsoft Access |
Controlador de Microsoft Access (ODBC) Proveedor de Microsoft Jet para Access (OLE DB) |
|
Microsoft SQL Server |
Controlador de Microsoft SQL Server (ODBC) Proveedor de Microsoft SQL Server (OLE DB) |
|
Oracle |
Controlador de Microsoft para Oracle (ODBC) Proveedor de OLE DB para Oracle |
Puede utilizar un DSN (Nombre de fuente de datos, Data Source Name) o una cadena de conexión para conectarse a la base de datos. Debe utilizar una cadena de conexión si está conectando a través de un proveedor de OLE DB o de un controlador ODBC no instalado en un sistema Windows.
Un DSN es un identificador de una palabra, como myConnection, que señala a la base de datos y contiene toda la información necesaria para conectar con ella. Un DSN se define en Windows. Puede utilizar un DSN si está conectando a través de un controlador ODBC instalado en un sistema Windows.
Una cadena de conexión es una expresión codificada manualmente que identifica la base de datos y contiene la información necesaria para conectar con ella, como se muestra en el siguiente ejemplo:
Driver={SQL Server};Server=Socrates;Database=AcmeMktg;
UID=wiley;PWD=roadrunner
También puede utilizar una cadena de conexión si conecta a través de un controlador ODBC instalado en un sistema Windows, pero en tal caso, resulta más sencillo utilizar un DSN.
Puede utilizar un proveedor OLE DB para comunicar con la base de datos (OLE DB solo está disponible en Windows NT, 2000 o XP). La creación de una conexión directa de base de datos OLE puede mejorar la velocidad de la conexión mediante la eliminación de la capa ODBC entre la aplicación web y la base de datos.
Si no especifica un proveedor OLE DB para la base de datos, ASP utilizará el proveedor OLE DB predeterminado para controladores ODBC para comunicar con un controlador ODBC que, a su vez, se comunica con la base de datos.
Existen distintos proveedores OLE DB para las distintas bases de datos. Puede obtener proveedores OLE DB para Microsoft Access y SQL Server descargando e instalando los paquetes Microsoft Data Access Components (MDAC) 2.5 y 2.7 en el equipo Windows que está ejecutando IIS. Puede descargar los paquetes MDAC gratis del sitio web de Microsoft.
instale MDAC 2.5 antes de instalar MDAC 2.7.
Puede descargar proveedores OLE DB para bases de datos Oracle del sitio web de Oracle.
En Dreamweaver, una conexión de base de datos OLE se crea mediante la inclusión de un parámetro Provider (proveedor) en una cadena de conexión. Por ejemplo, a continuación se incluyen parámetros para proveedores OLE DB comunes para bases de datos Access, SQL Server y Oracle, respectivamente:
Provider=Microsoft.Jet.OLEDB.4.0;... Provider=SQLOLEDB;... Provider=OraOLEDB;...
Para conocer el valor del parámetro de su proveedor OLE DB, consulte la documentación del fabricante o pregunte al administrador del sistema.
Una cadena de conexión combina toda la información que la aplicación web necesita para conectar con la base de datos. Dreamweaver inserta esta cadena en los scripts del lado del servidor de la página que el servidor de aplicaciones procesará posteriormente.
Una cadena de conexión para bases de datos Microsoft Access y SQL Server consta de una combinación de los siguientes parámetros separados por punto y coma:
Provider
Especifica el proveedor OLE DB para la base de datos. Por ejemplo, a continuación se incluyen parámetros para proveedores OLE DB comunes para bases de datos Access, SQL Server y Oracle, respectivamente:
Provider=Microsoft.Jet.OLEDB.4.0;... Provider=SQLOLEDB;... Provider=OraOLEDB;...
Para conocer el valor del parámetro de su proveedor OLE DB, consulte la documentación del fabricante o pregunte al administrador del sistema.
Si no incluye el parámetro Provider, se utilizará el proveedor OLE DB predeterminado para ODBC y deberá especificar un controlador ODBC adecuado para la base de datos.
Driver
Especifica el controlador ODBC que se utilizará si no se especifica un proveedor OLE DB para la base de datos.
Server
Especifica el servidor que aloja la base de datos SQL Server si la aplicación web se ejecuta en un servidor distinto.
Base de datos
El nombre de una base de datos SQL Server.
DBQ
La ruta de una base de datos basada en archivos, como, por ejemplo, una base de datos creada en Microsoft Access. La ruta es la existente en el servidor que aloja el archivo de base de datos.
UID
Especifica el nombre del usuario.
PWD
Especifica la contraseña del usuario.
DSN
El nombre de la fuente de datos, en el caso de que se utilice. En función de cómo defina el DSN en el servidor, podrá omitir los demás parámetros de la cadena de conexión. Por ejemplo, DSN=Results puede ser una cadena de conexión válida si define el resto de los parámetros al crear el DSN.
Es posible que las cadenas de conexión para otros tipos de bases de datos no utilicen los parámetros enumerados más arriba o, en caso de hacerlo, llamen a los parámetros o los utilicen de forma distinta. Para obtener más información, consulte la documentación del fabricante de la base de datos o pregunte al administrador del sistema.
A continuación se ofrece un ejemplo de cadena de conexión que crea una conexión ODBC con una base de datos Access denominada trees.mdb:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=C:\Inetpub\wwwroot\Research\trees.mdb
A continuación se ofrece un ejemplo de cadena de conexión que crea una conexión OLE DB con una base de datos SQL Server denominada Mothra ubicada en un servidor llamado Gojira:
Provider=SQLOLEDB;Server=Gojira;Database=Mothra;UID=jsmith; PWD=orlando8
En esta sección se presupone que ha configurado una aplicación ASP. Asimismo, se presupone que ha configurado una base de datos en su equipo local o en un sistema al cual tiene acceso a través de la red o del FTP.
Puede utilizar un DSN (nombre de fuente de datos) para crear una conexión ODBC entre la aplicación web y la base de datos. Un DSN es un nombre que contiene todos los parámetros necesarios para conectar con una base de datos ODBC concreta.
Dado que solo puede especificar un controlador ODBC en un DSN, si desea utilizar un proveedor OLE DB tendrá que utilizar una cadena de conexión.
Puede utilizar un DSN definido en un ordenador local para crear una conexión de base de datos en Dreamweaver.
Para instrucciones, véanse los artículos siguientes en el sitio web de Microsoft:
Si el ordenador ejecuta Windows 2000, consulte el artículo 300596 en http://support.microsoft.com/default.aspx?scid=kb;es-es;300596
Si el ordenador ejecuta Windows XP, consulte el artículo 305599 en http://support.microsoft.com/default.aspx?scid=kb;es-es;305599
Si desea utilizar un DSN local pero aún no lo ha definido, haga clic en Definir para abrir el Administrador de origen de datos ODBC de Windows.
No puede crear un esquema o catálogo en Microsoft Access.
En esta sección se presupone que ha configurado una aplicación ASP. Asimismo, se presupone que ha configurado una base de datos en su equipo local o en un sistema al cual tiene acceso a través de la red o del FTP.
Dreamweaver solo puede recuperar DSN de servidor creados con el Administrador de origen de datos ODBC de Windows.
Puede utilizar un DSN definido en un ordenador remoto para crear una conexión de base de datos en Dreamweaver. Si desea utilizar un DSN remoto, el DSN debe estar definido en el ordenador Windows que está ejecutando el servidor de aplicaciones (probablemente IIS).
Dado que solo puede especificar un controlador ODBC en un DSN, si desea utilizar un proveedor OLE DB tendrá que utilizar una cadena de conexión.
Para instrucciones, véanse los artículos siguientes en el sitio web de Microsoft:
Si el ordenador remoto ejecuta Windows 2000, consulte el artículo 300596 en http://support.microsoft.com/default.aspx?scid=kb;es-es;300596
Si el ordenador remoto ejecuta Windows XP, consulte el artículo 305599 en http://support.microsoft.com/default.aspx?scid=kb;es-es;305599
Los usuarios de Macintosh pueden pasar por alto este paso porque todas las conexiones de base de datos utilizan DSN en el servidor de aplicaciones.
No puede crear un esquema o catálogo en Microsoft Access.
Puede utilizar una conexión sin DSN para crear una conexión ODBC u OLE DB entre la aplicación web y la base de datos. Utilice una cadena de conexión para crear esta clase de conexión.
Si el servidor en el que se encuentra el sitio es de un ISP y desconoce la ruta completa de la base de datos, utilice el método MapPath del objeto de servidor ASP en la cadena de conexión.
Los usuarios de Macintosh pueden omitir este paso, ya que todas las conexiones de base de datos utilizan el servidor de aplicaciones.
No puede crear un esquema o catálogo en Microsoft Access.
Si usted es un desarrollador de ASP que trabaja con un ISP (Proveedor de servicios de Internet, Internet Service Provider), es probable que desconozca la ruta física de los archivos que carga, incluidos el archivo o archivos de base de datos.
Si el ISP no define un DSN para usted o tarda en hacerlo, debe encontrar una forma alternativa de crear las conexiones con los archivos de base de datos. Una alternativa es crear una conexión sin DSN con un archivo de base de datos, pero dicha conexión solo puede definirse si conoce la ruta física del archivo de base de datos en el servidor del ISP.
Puede obtener la ruta física de un archivo de base de datos en un servidor utilizando el método MapPath del objeto de servidor ASP.
Las técnicas que se describen en esta sección son aplicables solo si la base de datos está basada en archivos, como la base de datos Microsoft Access, donde los datos se almacenan en un archivo .mdb.
Después de cargar los archivos en un servidor remoto mediante Dreamweaver, los archivos residen en una carpeta en el árbol local de directorios del servidor. Por ejemplo, en un servidor que ejecute Microsoft IIS, la ruta de la página principal podría ser la siguiente:
c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm
Esta ruta se conoce como la ruta física del archivo.
No obstante, el URL para abrir el archivo no utiliza la ruta física. Utiliza el nombre del servidor o dominio seguido de una ruta virtual, como en el siguiente ejemplo:
www.plutoserve.com/jsmith/index.htm
La ruta virtual, /jsmith/index.htm, sustituye a la ruta física, c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm.
Si trabaja con un ISP, no siempre conocerá la ruta física de los archivos que cargue. Los ISP suelen proporcionarle un servidor FTP, posiblemente un directorio de servidor y un nombre de conexión y la contraseña. Los ISP también especifican un URL para ver las páginas en Internet, como por ejemplo www.plutoserve.com/jsmith/.
Si conoce el URL, puede obtener la ruta virtual del archivo (es la ruta que sigue al nombre de servidor o de dominio en un URL). Una vez conoce la ruta virtual, puede obtener la ruta física del archivo en el servidor mediante el método MapPath.
El método MapPath toma la ruta virtual como un argumento y devuelve la ruta física y el nombre del archivo. He aquí la sintaxis del método:
Server.MapPath("/virtualpath")
Si /jsmith/index.htm es la ruta virtual de un archivo, la siguiente expresión devolverá su ruta física:
Server.MapPath("/jsmith/index.htm")
Puede experimentar con el método MapPath como se indica a continuación.
<%Response.Write(stringvariable)%>
A continuación se incluye un ejemplo:
<% Response.Write(Server.MapPath("/jsmith/index.htm")) %>
La página muestra la ruta física del archivo en el servidor de aplicaciones, por ejemplo:
c:\Inetpub\wwwroot\accounts\users\jsmith\index.htm
Para obtener más información sobre el método MapPath, consulte la documentación online que se suministra con Microsoft IIS.
Para escribir una cadena de conexión sin DSN en un archivo de base de datos situado en un servidor remoto, debe conocer la ruta física del archivo. El siguiente ejemplo es una cadena de conexión sin DSN típica para una base de datos Microsoft Access:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=c:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb
Si no conoce la ruta física de sus archivos en el servidor remoto, puede obtener la ruta utilizando el método MapPath de su cadena de conexión.
Suponga que la ruta virtual de su base de datos Microsoft Access es /jsmith/data/statistics.mdb; la cadena de conexión puede expresarse como se indica a continuación si utiliza el lenguaje de scripts VBScript:
“Driver={Microsoft Access Driver (*.mdb)};DBQ=” & Server.MapPath¬
("/jsmith/data/statistics.mdb")
El carácter ampersand (&) se utiliza para concatenar (combinar) dos cadenas. La primera cadena va entre comillas y la segunda la devuelve la expresión Server.MapPath. Al combinar dos cadenas, se crea la siguiente cadena:
Driver={Microsoft Access Driver (*.mdb)};
DBQ=C:\Inetpub\wwwroot\accounts\users\jsmith\data\statistics.mdb
Si utiliza código JavaScript, la expresión es idéntica, salvo que el signo que se utiliza para concatenar dos cadenas es el más (+) en lugar del ampersand (&):
“Driver={Microsoft Access Driver (*.mdb)};DBQ=” + Server.MapPath¬
("/jsmith/data/statistics.mdb")
Los usuarios de Macintosh pueden omitir este paso, ya que todas las conexiones de base de datos utilizan el servidor de aplicaciones.
Si la conexión falla, compruebe de nuevo la cadena de conexión o póngase en contacto con el ISP para asegurarse de que el controlador de base de datos que ha especificado en la cadena de conexión está instalado en el servidor remoto. Compruebe asimismo que el ISP tiene la versión más reciente del controlador. Por ejemplo, una base de datos creada en Microsoft Access 2000 no funciona con Microsoft Access Driver 3.5. Necesita Microsoft Access Driver 4.0 o una versión posterior.
Al crear una conexión de base de datos, Dreamweaver almacena la información de conexión en un archivo de inclusión (include) en la subcarpeta Connections de la carpeta raíz del sitio local. Puede editar o eliminar la información de conexión del archivo manualmente o como se indica a continuación.
Dreamweaver actualiza el archivo de inclusión (include) que, a su vez, actualiza todas las páginas del sitio que utilicen la conexión.
Para evitar recibir errores después de eliminar la conexión, actualice todos los conjuntos de registros que utilicen la conexión antigua haciendo doble clic en el nombre del juego de registros del panel Vinculaciones y eligiendo una nueva conexión.
Inicia sesión en tu cuenta