Configurar el acceso a base de datos desde un proyecto de Borland Delphi

por Walter E. Irahola

El objetivo del presente artículo es brindar los procedimientos ideales para poder tener acceso a una base de datos desde un proyecto en Borland Delphi. Se toma como ejemplo el acceso a una base de datos de Microsoft Access (*.mdb).

Todo proyecto en el que se necesite manejar gran cantidad de datos de manera óptima, rápida, centraliza, y con acceso compartido, lo ideal es pensar en un sistema manejador de base de datos. Hoy en día existen muchos motores de base de datos, con la ventaja de que Borland Delphi los soporta, pero con la desventaja que resulta difícil dar forma a la estructura de base de datos necesaria, es decir a diseñarla. Esto será abordado en otro artículo, el cual deberá ser extenso para dar las primeras pautas y escuelas existentes para aprender a diseñar base de datos.

Sin embargo, pretendo en este articulo dar los procedimientos iníciales para lograr el acceso y administración de una base de datos desde Borland Delphi. Parto desde el supuesto de que ya se posee la base de datos, con el nombre mibd.mdb; además de poseer un proyecto, un formulario principal y un modulo de datos.

Los siguientes procedimientos se deberán seguir:

  • Administrador de origenes de datos ODBC

  1. Crear alias: el alias representa el nombre o identificador de la base de datos en el sistema operativo y en nuestro sistema a desarrollar. Físicamente la base de datos puede estar en la misma computadora o puede estar en un entorno de red. El proyecto de Borland Delphi solo la identificara a nuestra base de datos a través de su alias, sin saber donde físicamente esta almacenada.

    Existen varias formas de crear alias de base de datos, pero voy a explicar como hacerlo desde el Administrador de orígenes de datos ODBC, que representa la forma más sencilla en entorno Windows. Para acceder se puede seguir los siguientes pasos:

    • Desde Borland Delphi: acceder al menú Database|Explore, el cual abrirá el programa SQL Explorer: este programa muestra todos los alias existentes en el sistema operativo y permitirá crearlos. Luego acceder al menú Object|ODBC administrator.
    • Desde el Panel de Control: acceder a Rendimiento y Mantenimiento|Herramientas administrativas| Orígenes de datos (ODBC).

    A continuación se accederá a la ventana cuyo titulo es Administrador de orígenes de datos ODBC, donde se deberá:

    • Acceder a la solapa DSN de Sistema, allí se visualizara la lista de alias existentes y  elegir el botón Agregar?.
    • En la lista de los diversos orígenes de datos seleccionar ?Microsoft Access Driver (*.mdb) ?y hacer clic en el botón Finalizar.
    • En la ventana Configuración de ODBC Microsoft Access se debe ingresar en ?Nombre del origen de datos? el nombre del alias deseado, en ?Descripción? un texto de referencia y por ultimo hacer clic en el botón Seleccionar? para ubicar la base de datos.
      • Configuración de ODBC Microsoft Access
    • Luego, para cerrar la ventana y guardar los datos o modificaciones ingresadas, hacer clic en el botón Aceptar. Esto volverá a la solapa DSN de Sistema, donde se deberá visualizar el nuevo alias creado.
  2. Insertar el componente TDatabase: en la solapa BDE se encuentra el componente TDatabase, el cual permite el acceso a una base de datos cualquiera, con solo seleccionar su alias asociado.

    • Componente TDatabase

    Una vez insertado el componente, se debe proceder a configurar las siguientes propiedades:

    • AliasName: representa el alias asociado a la base de datos que se pretende administrar desde el proyecto. Se debe seleccionar de una lista desplegable.
    • DatabaseName: representa el nombre con el que se identificara internamente a la base de datos en el proyecto de Borland Delphi. Recomiendo ingresar el mismo nombre que el seleccionado en AliasName, a fin de evitar confusiones futuras.
    • LoginPrompt: esta propiedad permite definir si se desea que aparezca la ventana solicitando el nombre de usuario y contraseña de acceso a la base de datos. Recomiendo setear a false para que no muestre la ventana.
    • Name: permite dar un nombre al componente que permitirá dar acceso a la base de datos desde Borland Delphi.
    • Params: permite ingresar parámetros necesarios para el acceso a la base de datos. Un uso útil de esta propiedad es cuando la base de datos posee contraseña y no se desea que muestre la ventana solicitando los datos de acceso. Para ello se debe insertar los siguientes parámetros:

      USER NAME: nombre de usuario
      PASSWORD contraseña

    • Connected: esta propiedad permite conectarse o desconectarse de la base de datos en tiempo de diseño. En tiempo de ejecución se puede utilizar el método Open.
  3. Insertar componentes TTable y TDatasource: para poder tener acceso individualmente a las tablas que posea una base de datos, se debe insertar tantos componentes TTable como sean necesarios, los cuales se pueden encontrar en la solapa BDE.

    En cada componente TTable se debe proceder a configurar las siguientes propiedades:

    • Componente TTable

    • DatabaseName: en esta propiedad se debe seleccionar el nombre con el que se identifica internamente a la base de datos en el proyecto de Borland Delphi, es decir el valor ingresado en la propiedad DatabaseName del componente TDatabase.
    • Name: permite dar un nombre al componente que permitirá dar acceso a cada una de las tablas de la base de datos desde Borland Delphi.
    • TableName: permite seleccionar la tabla a la cual se desea tener acceso.
    • Active: esta propiedad permite conectarse o desconectarse de la tabla en tiempo de diseño. En tiempo de ejecución se puede utilizar el método Open.

    Para que los datos de las tablas asociados a los componentes TTable puedan visualizarse en los diversos componentes visuales de la solapa Data Controls (DBGrid, DBText, DBEdit, etc.) que nos otorga el Borland Delphi, se debe asociar cada uno de los componentes TTable con un componente TDatasource. Los cuales deben tener las siguientes propiedades seteadas:

    • Componente TDatasource

    • DataSet: permite seleccionar el componente TTable con el cual estará asociado.
    • Name: permite dar un nombre al componente que permitirá visualizar los datos de una tabla desde Borland Delphi.
    • AutoEdit: esta propiedad permite pasar al estado de edición, de forma automática, cada vez que se mueve entre los registros de una tabla. Esto no debería permitir porque permitiría la modificación accidental de los datos a medida que se navega por ellos, es por eso que recomiendo setear a false para evitar futuros inconvenientes.
  4. Diseñar los formularios de datos: este paso representa diseñar todos aquellos formularios que nos permitirán administrar y acceder a los registros y campos de las tablas que formen parte de la base de datos.

    Este tema merece un artículo a parte, por la diversidad de componentes visuales que nos otorga Borland Delphi para el acceso a los datos de una tabla.

  5. Garantizar el acceso a la base de datos: nuestro sistema debe garantizar que al momento de ejecutarse la aplicación ya estén disponibles los datos de las diversas tablas de la base de datos que deseamos administrar. Para ello recomiendo los siguientes pasos:

    1. El primer formulario a crearse, cuando se ejecuta la aplicación, debe ser el modulo de datos (data module), así podemos trabajar con mayor libertad desde el formulario principal con la base de datos.

      Para realizar esto, se debe acceder al código fuente del proyecto, accediendo desde el menú Project|View source, y modificar el orden de creación del modulo de datos y el formulario principal.

      Application.Initialize;
      Application.CreateForm(TDataModule1, DataModule1);
      Application.CreateForm(TfPrincipal, fPrincipal);
      Application.Run;

    2. Cuando se crea el formulario principal (evento OnCreate) se debe abrir la base de datos y todas las tablas.

      DataModule1.database1.open;
      DataModule1.ttable1.open;
      DataModule1.ttable2.open;

    Se aclara que la forma ideal de garantizar el acceso a la base de datos seria programar desde la creación o actualización del alias mediante acceso al API del entorno Windows, pero esto complicaría el poder entender los procedimientos básicos de acceso a base de datos desde Borland Delphi para aquellos programadores novatos.

    También debemos garantizarnos que cuando cerramos nuestra aplicación, también se cierre la base de datos. Para ello, cuando se cierra el formulario principal (evento OnClose) se debe cerrar las tablas y la base de datos:

    DataModule1.ttable1.close;
    DataModule1.ttable2.close;
    DataModule1.database1.close;

El procedimiento explicado pretende ser orientativo en los procedimientos iníciales con el acceso a base de datos de Borland Delphi, pero implica la necesidad de crear o reconfigurar el alias cada vez que se cambia de computadora o se mueve de carpeta el sistema desarrollado.


http://emailcashpro.com