1. El estado del alias de la base de datos
El motor de base de datos incorporado BDE (Borland Database Engine) de Delphi proporciona potentes funciones de procesamiento de bases de datos, y BDE es la parte central de la función de base de datos de Delphi.
Tomando una base de datos local que solo usa una máquina independiente como ejemplo, el programa Delphi puede controlar directamente el acceso de los datos de la base de datos a través de BDE. Este control de acceso se basa en la configuración de los parámetros BDE. tablas de bases de datos específicas. Por lo tanto, al crear una tabla de base de datos, debe haber dos procesos: uno es detectar si el alias de la base de datos correspondiente existe a través de BDE. (es decir, DataBASEname) en el alias de la base de datos (es decir, DataBASEname) si hay una tabla de base de datos que debe establecerse, si no existe, se establecerá. De esta manera, los datos en la tabla original están protegidos de la pérdida.
2. Componente de sesión: interfaz entre el programa de base de datos Delphi y BDE
Delphi proporciona automáticamente un componente de sesión para aplicaciones de bases de datos, que es la clave para la interfaz de la aplicación con BDE. A continuación se muestra una descripción prototipo de varios procesos del componente de la sesión con respecto a la interfaz BDE.
1.getAlIasNames (Lista: TStrings);
2.AddStandardAdalias (Nombre de constante, Path, DefaultDriver: String); Por ejemplo, agregue un alias llamado CNTSSAMP, el controlador de base de datos predeterminado es paradoja y la ruta de almacenamiento es c:/delphp11:
Session.AddStandardalias (CNTSSAMP, C:/Delphp11, Paradox);
3.gettableNames (const DataBASEname, Patrón: String; Extensiones, Systemtables: Boolean; Lista: Tstrings);
4.SavecOnFigFile;
Además, use el valor de list.indexof (cadena especificada) para determinar si hay cadenas requeridas en la lista de cadenas para determinar si se debe establecer una nueva tabla de alias de base de datos y una tabla de bases de datos.
3. Un ejemplo
Escriba el siguiente código en el formulario de formato. CNTSSAMP.
Procedimiento TForm1.FormCreate (remitente: tobject
varilla
AP: tStringList;
Respuesta: entero;
Comenzar
ap: = tStringList.create;
Session.getAliasNames (AP);
if (ap.IndexOf (cntssamp) =-1) Entonces {determinar si el alias existe}
Comenzar
Respuesta: = Application.MessageBox (el alias cntssamp no existe, ¿se crea ahora?, BDE Information Window, MB - OkCancel); {Agregue una base de datos alias llamado Cngzsamp}
Si responde = idcancel entonces
Comenzar
Ap.Free;
Salida;
fin;
Session.AddStandardalias (CNTSSAMP, C:/Delphp11, Paradox);
Session.saveconfigFile;
fin ;
ap.clear;
Session.gettableNames (cntssamp ,, falso, falso, ap);
if (ap.IndexOf (tsk) =-1) Entonces {Determine si la tabla existe}
Comenzar
Respuesta: = Application.MessageBox (la tabla TSK no existe en el alias CNTSSAMP, ¿se crea ahora?, Ventana de información de la tabla, MB - OkCancel);
Si responde = idcancel entonces
Ap.Free;
Salida;
fin;
con la tabla1 hacer
Comenzar
Activo: = falso;
DatabAsename: = CNTSSAMP;
TableName: = tsk;
Tabletype: = ttParadox;
con Fielddefs
BEGIN {Agregar campo}
Claro;
Agregar (sh, ftString, 30, falso);
Agregar (SM, ftString, 30, falso);
Agregar (cbs, ftString, 20, falso);
Agregar (CBRQ, ftDate, 0, falso);
Agregar (ys, ftinteger, 0, falso);
fin;
con indexdefs do
BEGIN {Agregar índice}
Claro;
Agregar (shsy, sh, [primario, ixunique]);
fin;
Creattable;
fin;
fin ;
Ap.Free;
fin;