You are on page 1of 4

El Rinconcito de Delphi

ADO y Delpi
Isidro Robayna
irobayna@gw,ctg.com Systems Adviser de Computer Task Group Consultor certificado por Inprise en Delphi 4 C/S

El presente artículo ha sido cedido para su publicación en El Rinconcito de Delphi. Es ilegal cualquier actuación que vulnere los derechos del autor.

es posible conectar Figura 2 Aquí seleccionamos el proveedor OLE DB con el cual queremos conectarnos. y ponemos la propiedad Connected a TRUE. Para esto se cambia la propiedad Connection a una cadena válida. TADOQuery. Antes de que podamos ejecutar comandos o enviar datos. ADO no es sino una pieza mas en el puzzle de como acceder a las bases de datos. asegúrate de que instalas soporte DCOM primero. Es un estándar abierto. TADOTable. Esta tecnología nos da un lenguaje independiente.Active := TRUE Ahora tenemos que construir la cadena de conexión (figura 1) Aunque esta se puede escribir manualmente. realmente es un editor que esta incluido en los objetos ADO de Microsoft. Ejecuta el programa DCOM95. Pulsa el botón “Build…” para construir la cadena y la siguiente pantalla aparecerá (figura 2) Di adiós al BDE Ahora ya podemos abrir Delphi y empezar a trabajar con los componentes ADO.ConnectionString := ‘Provider=NombredelProveedor. el cual incluye ADO. es siempre aconsejable usar el editor que nos ayuda a construirla. TADODataSet. a semejanza del ODBC. Estos componentes son análogos a los basados en el BDE. con una API que es fácil de usar para acceder a cualquier base de datos la cual tenga un proveedor (OLE DB). Para que una aplicación que use ADO pueda finalmente acceder a los datos necesita hacerlo mediante un proveedor OLE DB. ADO (Microsoft ActiveX Data Objects) es la apuesta que esta haciendo Microsoft para acceder a bases de datos relacionales y no relacionales. Una vez la aplicación se está ejecutando.EXE. Lo siguiente que tendrás que hacer es instalar MDAC. Windows 98. ADOConnection1. Para empezar a crear una aplicación ADO utilizamos el componente TADOConnection. Créalo en un Modulo de Datos. Remote Server=Servidor’. Ejecuta el programa MDAC_TYP.1 de los Componentes de acceso de datos. Delphi trae seis : TADOConnection. UDA se programa mediante MDAC (Microsoft Data Access Components).ADO y Delphi Como utilizar los componentes nativos ADO de Delphi y otras alternativas.EXE. Ambas familias de componentes (ADO y BDE) tienen en común como antepasada la clase TdataSet. ODBC y OLE DB. con otra base de datos. Por ejemplo: ADOConnection1. NT y 2000 ya traen soporte DCOM. Esta pantalla nos muestra los 2 . Esta es la que necesitas para trabajar con Delphi y ADO. Si usas el Windows 95. Este editor no es nativo de Delphi. TADOStoredProc y TADOcommand. Todo lo que necesitamos para trabajar con ADO lo tienes en el CD de Delphi. Como anécdota comenta que donde recibió más cumplidos de los beta testers fue en este editor! El puzzle completo o sopa de letras El puzzle final se llama UDA (Universal Data Access). Un proveedor OLE DB es un interfaz de bajo nivel para acceder a datos en una organización. en el directorio MDAC. Este componente se encarga de la conexin a la base de datos. Microsoft SQL Server y Access por mencionar algunos. diseñado para acceder cualquier tipo de datos. una aplicación necesita establecer una conexión con una base de datos. ADO no esta asociado con ningun lenguaje de programación y puede usarse desde cualquiera que soporte COM. En ADO es posible que todos los componentes compartan la misma concesión a la base de datos (usando la propiedad Connection) o que cada uno tenga una concesión independiente. Este programa instalará en tu ordenador la versión 2. hay proveedores OLE DB para ORACLE. Por ejemplo. Figura 1. Mark Edington es el ingeniero que se encarga de desarrollar ADO en Delphi.

Vamos a la hoja All (figura 6) donde comprobamos y podemos modificar si queremos las características de nuestra conexión. lectura y escritura. Figura 5 Figura 3 Una vez aquí. Nosotros elegimos ‘share deny none’. El siguiente paso es ver si podemos conectarnos satisfactoriamente con la base da datos. en este caso usamos C:\Winnt\catroot\icatalog. solo lectura. Figura 4 Ahora vamos a la hoja de propiedades avanzadas (figura 5) en la cual seleccionamos el tipo de conexión que queremos. Si todo sale bien.mdb. Por ejemplo. En este ejemplo vamos a seleccionar el primer proveedor para conectarnos con una base de datos de Microsoft ACCESS. Pulsael botón “Next >>” y veras la pantalla de conexiones (figura 3). pulsa el botón de la ¿elipses? y navega por tu disco hasta encontrar la base de datos a la cual te quieres conectar. El siguiente paso es ejecutar algún comando SQL. etc. Para esto lo único que necesitas es incluir en tu modulo de datos el componente TADODataSet. Figura 6 Ahora ya tenemos una conexión activa con una base de datos de Microsoft Access.ADO y Delphi proveedores (drivers) disponibles en nuestro ordenador. con lo cual decimos que compartiremos el acceso a las tablas con otros clientes para lectura y escritura. Para ello pulsamos el bot ón “Test Connection”. veremos un mensaje (figura 4) indicando la buena conexión. Asegúrate de conectar la propiedad “Connection” a la que previamente hemos configurado con TADOConnection (figura 7) 3 . Y el ultimo paso es revisar las opciones que hemos seleccionado hasta ahora.

Estos componentes. requieren que tu sistema tenga el MDAC 2. en su versión 3. La respuesta es simple. pero entre ellos uno destaca en particular es Adonis. estos componentes tienen mejor soporte para transacciones nested e incluyen propiedades para controlar cursores en memoria. Te preguntaras porque hablo de Adonis en particular habiendo tantas opciones disponibles.co.htm Alternativas al BDE: http://www. etc. manipular y borrar tablas. Finalmente. El ultimo componente por ver es el TADOCommand.cybermagic.nz/adonis/ FAQ para los componentes ADO de Adonis: http://www.co.cybermagic. estos están en una categoría totalmente por su cuenta. puede trabajar directamente con una tabla. ejecutar comandos SQL. Ofrecen muchísimas mas opciones que no están disponibles en los componentes nativos de Delphi. Tienen tantas opciones disponibles que seria necesario escribir un articulo 4 . Por ejemplo algunas de estas funciones son: ADOX (figura 9) que son componentes para crear. TADOQuery y TADOStoredProc para facilitarnos la migración del BDE al ADO.ADO y Delphi entero hablando de ellos.5.htm y http://www. manejar el resultado de un DataSet o ejecutar un procedimiento almacenado.microsoft. vistas. Todo lo que podemos hacer con estos tres componentes se puede hacer con el TADODataSet. Este componente ha sido diseñado primordialmente para ejecutar comandos que no devuelven resultados.com El cielo es el limite Hay muchos componentes ADO en el mercado. visita este sitio web: http://www. Recursos Para obtener mas información sobre MDAC o para descargar las ultimas versiones.kylecordes. Figura 10 Además ofrecen RDS (Entrada de datos remota) (figura 11) Figura 11 Figura 8 Lo interesante del componente TADODataSet es que a diferencia de su primo TDataSet. se puede hacer directamente en la propiedad “Command Text” o bien pica dos veces para ver el Editor de texto de comandos SQL (figura 8) Figura 9 También incluyen JRO (figura 10) que son componentes para crear. el cual tiene la habilidad de ejecutar comandos.com/data/default.microsoft. modificar y sincronizar replicas usando objetos de replicación y el motor Jet.nz/winsoft/adofaq. Delphi trae también los componentes TADOTable. Figura 7 Para escribir nuestro código SQL.com/data/download. Por ejemplo el comando DELETE en SQL.htm Pagina web de Adonis: http://www. uno por uno.5.