Sei sulla pagina 1di 4

ADO y Delphi

Autor:

Isidro Robayna
irobayna@gw.ctg.com
Systems Advisor de Computer Task Group
Consultor certificado por Inprise en Delphi 4 C/S

Prohibida la reproducción total o parcial sin permiso explícito del autor.


con otra base de datos. Para esto se cambia la propiedad
ADO y Delphi Connection a una cadena válida, y ponemos la propiedad
Connected a TRUE. Por ejemplo:
Como utilizar los componentes nativos ADO ADOConnection1.ConnectionString :=
de Delphi y otras alternativas. ‘Provider=NombredelProveedor;
Remote Server=Servidor’;
ADO (Microsoft ActiveX Data Objects) es la apuesta que esta ADOConnection1.Active := TRUE
haciendo Microsoft para acceder a bases de datos relacionales y Ahora tenemos que construir la cadena de conexión (figura 1)
no relacionales. ADO no esta asociado con ningun lenguaje de Aunque esta se puede escribir manualmente, es siempre
programación y puede usarse desde cualquiera que soporte aconsejable usar el editor que nos ayuda a construirla. Este
COM. ADO no es sino una pieza mas en el puzzle de como editor no es nativo de Delphi, realmente es un editor que esta
acceder a las bases de datos. Para que una aplicación que use incluido en los objetos ADO de Microsoft. Mark Edington es
ADO pueda finalmente acceder a los datos necesita hacerlo el ingeniero que se encarga de desarrollar ADO en Delphi.
mediante un proveedor OLE DB. Un proveedor OLE DB es un Como anécdota comenta que donde recibió más cumplidos de
interfaz de bajo nivel para acceder a datos en una organización. los beta testers fue en este editor!
Es un estándar abierto, a semejanza del ODBC, diseñado
para acceder cualquier tipo de datos.

El puzzle completo o sopa de


letras
El puzzle final se llama UDA (Universal Data Access).
Esta tecnología nos da un lenguaje independiente, con una
API que es fácil de usar para acceder a cualquier base de
datos la cual tenga un proveedor (OLE DB). Por ejemplo,
hay proveedores OLE DB para ORACLE, Microsoft SQL
Server y Access por mencionar algunos. UDA se Figura 1.
programa mediante MDAC (Microsoft Data Access
Components), el cual incluye ADO, ODBC y OLE DB. Pulsa el botón “Build…” para construir la cadena y la siguiente
Todo lo que necesitamos para trabajar con ADO lo tienes en el pantalla aparecerá (figura 2)
CD de Delphi, en el directorio MDAC. Si usas el Windows 95,
asegúrate de que instalas soporte DCOM primero. Ejecuta el
programa DCOM95.EXE. Windows 98, NT y 2000 ya traen
soporte DCOM. Lo siguiente que tendrás que hacer es instalar
MDAC. Ejecuta el programa MDAC_TYP.EXE. Este
programa instalará en tu ordenador la versión 2.1 de los
Componentes de acceso de datos. Esta es la que necesitas para
trabajar con Delphi y ADO.

Di adiós al BDE
Ahora ya podemos abrir Delphi y empezar a trabajar con los
componentes ADO. Delphi trae seis : TADOConnection,
TADODataSet, TADOTable, TADOQuery, TADOStoredProc y
TADOcommand. Estos componentes son análogos a los
basados en el BDE. Ambas familias de componentes (ADO y
BDE) tienen en común como antepasada la clase TdataSet.
Antes de que podamos ejecutar comandos o enviar datos, una
aplicación necesita establecer una conexión con una base de
datos. Para empezar a crear una aplicación ADO utilizamos el
componente TADOConnection. Créalo en un Modulo de
Datos. Este componente se encarga de la conexin a la base de
datos. En ADO es posible que todos los componentes
compartan la misma concesión a la base de datos (usando la Figura 2
propiedad Connection) o que cada uno tenga una concesión
independiente. Aquí seleccionamos el proveedor OLE DB con el cual
Una vez la aplicación se está ejecutando, es posible conectar queremos conectarnos. Esta pantalla nos muestra los

2
ADO y Delphi

proveedores (drivers) disponibles en nuestro ordenador. 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).

Figura 5

Figura 3

Una vez aquí, pulsa el botón de la ¿elipses? y navega por tu


disco hasta encontrar la base de datos a la cual te quieres
conectar, en este caso usamos C:\Winnt\catroot\icatalog.mdb. El
siguiente paso es ver si podemos conectarnos satisfactoriamente
con la base da datos. Para ello pulsamos el bot ón “Test
Connection”. Si todo sale bien, veremos un mensaje (figura 4)
indicando la buena conexión.

Figura 4
Ahora vamos a la hoja de propiedades avanzadas (figura 5) en la
cual seleccionamos el tipo de conexión que queremos. Por
ejemplo, lectura y escritura, solo lectura, etc. Nosotros elegimos
‘share deny none’, con lo cual decimos que compartiremos el Figura 6
acceso a las tablas con otros clientes para lectura y escritura.
Ahora ya tenemos una conexión activa con una base de datos de
Y el ultimo paso es revisar las opciones que hemos seleccionado Microsoft Access.
hasta ahora. Vamos a la hoja All (figura 6) donde comprobamos El siguiente paso es ejecutar algún comando SQL. Para esto lo
y podemos modificar si queremos las características de nuestra único que necesitas es incluir en tu modulo de datos el
conexión. componente TADODataSet. Asegúrate de conectar la propiedad
“Connection” a la que previamente hemos configurado con
TADOConnection (figura 7)

3
ADO y Delphi

entero hablando de ellos.


Estos componentes, en su versión 3.5, requieren que
tu sistema tenga el MDAC 2.5. Ofrecen muchísimas
mas opciones que no están disponibles en los
componentes nativos de Delphi. Por ejemplo algunas
de estas funciones son: ADOX (figura 9) que son
componentes para crear, manipular y borrar tablas,
vistas, etc.

Figura 7
Para escribir nuestro código SQL, se puede hacer Figura 9
directamente en la propiedad “Command Text” o bien pica
dos veces para ver el Editor de texto de comandos SQL También incluyen JRO (figura 10) que son componentes para
(figura 8) crear, modificar y sincronizar replicas usando objetos de
replicación y el motor Jet.

Figura 10

Además ofrecen RDS (Entrada de datos remota)


(figura 11)

Figura 11
Figura 8
Finalmente, estos componentes tienen mejor
Lo interesante del componente TADODataSet es que a soporte para transacciones nested e incluyen propiedades para
diferencia de su primo TDataSet, puede trabajar directamente controlar cursores en memoria.
con una tabla, ejecutar comandos SQL, manejar el resultado
de un DataSet o ejecutar un procedimiento almacenado.
Delphi trae también los componentes TADOTable, Recursos
Para obtener mas información sobre MDAC o para descargar
TADOQuery y TADOStoredProc para facilitarnos la
las ultimas versiones, visita este sitio web:
migración del BDE al ADO. Todo lo que podemos hacer con
http://www.microsoft.com/data/default.htm y
estos tres componentes se puede hacer con el TADODataSet.
http://www.microsoft.com/data/download.htm
El ultimo componente por ver es el TADOCommand, el cual
Pagina web de Adonis: http://www.cybermagic.co.nz/adonis/
tiene la habilidad de ejecutar comandos, uno por uno. Este
FAQ para los componentes ADO de Adonis:
componente ha sido diseñado primordialmente para ejecutar
http://www.cybermagic.co.nz/winsoft/adofaq.htm
comandos que no devuelven resultados. Por ejemplo el
Alternativas al BDE: http://www.kylecordes.com
comando DELETE en SQL.

El cielo es el limite
Hay muchos componentes ADO en el mercado, pero entre
ellos uno destaca en particular es Adonis. Te preguntaras
porque hablo de Adonis en particular habiendo tantas
opciones disponibles. La respuesta es simple, estos están en
una categoría totalmente por su cuenta. Tienen tantas
opciones disponibles que seria necesario escribir un articulo

Potrebbero piacerti anche