Curso básico de Delphi: desarrollo de aplicaciones cliente servidor DELPHI (4) [1]
Descripción general de la adaptación
La llamada adaptación consiste en transformar aplicaciones de escritorio en aplicaciones cliente/servidor.
La adaptación es un tema muy complejo, por lo que no entraré en detalles aquí. Esta sección presentará los aspectos más importantes de la adaptación de aplicaciones Delphi.
El aspecto principal de la adaptación es
●Adaptar la base de datos de la plataforma de escritorio al servidor.
●Convierta aplicaciones en adaptaciones cliente/servidor.
La adaptación también requiere una transición de un entorno de escritorio a un entorno cliente/servidor.
Existen muchas diferencias entre las bases de datos de escritorio y las bases de datos del servidor SQL. Por ejemplo,
las bases de datos de escritorio se utilizan para el acceso de un solo usuario al mismo tiempo, mientras que los servidores se utilizan para el acceso de múltiples usuarios. acceso de usuario.
Las bases de datos de escritorio están orientadas a registros y los servidores, a colecciones.
Las bases de datos de escritorio almacenan cada tabla en un archivo separado, mientras que el servidor almacena todas las tablas en la base de datos. Las aplicaciones cliente/servidor deben resolver los problemas de actualización. El más complejo es conectar la red y el control de transacciones.
Base de datos adaptable
La adaptación de la base de datos incluye los siguientes pasos
● Definir metadatos en el servidor según la estructura de la base de datos del escritorio.
●Mueva datos del escritorio al servidor.
●Resolver los siguientes problemas
Bajas diferencias en tipos de datos
●Seguridad e integridad de los datos
●Control de transacciones
●Derechos de acceso a los datos
●Legalidad de los datos
●Bloqueo
Delphi proporciona dos métodos para modificar la base de datos.
●Utilice la herramienta de escritorio de la base de datos para seleccionar el menú Herramientas/Utilidades/Copiar al comando para copiar la tabla de la base de datos desde el modo de escritorio al formato SQL.
●Utilice el componente TBatchMove para crear aplicaciones.
Ambos métodos pueden convertir estructuras de tablas y datos de fuentes de datos de escritorio al servidor. Dependiendo de estas bases de datos, es posible que necesite cambiar la tabla de resultados; por ejemplo, es posible que desee asignar diferentes tipos de datos.
También puedes agregar la siguiente funcionalidad a tu base de datos.
●Restricciones de integridad
●Índices
●Restricciones de detección
●Procedimientos de almacenamiento y activadores
●Otros funciones del servidor
Usar scripts SQL y herramientas de definición de datos del servidor para definir metadatos y luego usar los dos métodos introducidos anteriormente para transferir datos será más eficiente, porque si define manualmente las tablas de la base de datos, el Escritorio de la base de datos y TBatchMove Sólo componentes Se copiarán los datos.
Aplicaciones adaptables
En teoría, una aplicación Delphi diseñada para acceder a datos locales puede acceder a datos en un servidor remoto con sólo modificaciones mínimas. Si se define una fuente de datos adecuada en el servidor, puede indicarle a la aplicación que acceda a ella simplemente cambiando la propiedad DatabaseName del componente TTable o TQuery en la aplicación.
De hecho, existen muchas diferencias importantes entre el acceso a fuentes de datos locales y de proceso. Las aplicaciones cliente/servidor deben resolver muchos problemas que no se encuentran en las aplicaciones de escritorio.
Cualquier aplicación Delphi puede utilizar componentes TTable o TQuery para acceder a los datos. Las aplicaciones de escritorio suelen utilizar componentes de tabla. TQuery será más eficiente cuando se adapte al servidor SQL. Si la aplicación quiere recuperar una gran cantidad de registros, el componente TQuery es ligeramente mejor.
Si la aplicación utiliza funciones estadísticas o matemáticas, es más eficiente ejecutar estas funciones en el servidor a través de procedimientos almacenados, porque los procedimientos almacenados se pueden ejecutar más rápido y el uso de procedimientos almacenados también puede reducir la carga de la red. , especialmente es una función con una gran cantidad de filas de datos.
Por ejemplo, calcular la desviación estándar de una gran cantidad de registros.
Si esta función se ejecuta en el cliente, todos los valores se obtendrán del servidor y se enviarán al cliente, causando congestión de la red.
Si la función se ejecuta en el servidor, la aplicación sólo necesita la respuesta en el servidor.
Análisis de ejemplo de aplicación cliente/servidor Delphi
El ejemplo utilizado en esta sección es un ejemplo de una base de datos Delphi. CSDEMO CSDEMO es un programa de muestra para la programación cliente/servidor de Delphi, y su servidor de base de datos es un servidor InterBase local.
CSDEMO demuestra muy bien la configuración del entorno BDE. Las funciones avanzadas de InterBASE Server, la aplicación de activadores de conexión del servidor SQL, la aplicación de programación de procedimientos almacenados y la tecnología de control de transacciones tienen un alto valor de referencia. Esta sección cubre lo siguiente.
●Introducción al entorno de bases de datos
●Aplicación de bases de datos
●Cambio entre diferentes tablas de bases de datos
●Programación de activadores
●Programación de procedimientos almacenados
●Aplicación de control de transacciones
Introducción al entorno de base de datos
El servidor de base de datos utilizado en este ejemplo es el servidor InterBase local. Versión para un solo usuario de InterBase Server. ANSI SQL Local InterBase admite el desarrollo y prueba de aplicaciones cliente/servidor en una sola computadora y se puede adaptar fácilmente a Interbase Server. Por lo tanto, es muy conveniente utilizar Local InterBase como entorno de desarrollo de prototipos para desarrollar aplicaciones cliente/servidor.
Parámetros BDE de IBLOCAL
En este ejemplo, la base de datos SQL es IBLOCAL y los valores de sus parámetros los establece la herramienta de configuración BDE (BDECFG EXE). son como se muestran en la siguiente tabla.
Tabla valores de parámetros IBLOCAL
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━
Nombre del parámetro valor del parámetro
──────────────────────────── ────────
Tipo de INTRBASE
小路
Nombre del servidor C:\intr base\EXAMPLES\EMPLOYEE GDB
Nombre de usuario SYSDBA
Modo abierto lectura/escritura
Tamaño de caché del esquema
Controlador de idioma
SQLQRYMODE
SQLPASSTHRU Esquema compartido AUTOMIT
Tiempo de cambio de esquema
Número máximo de filas
Recuento de lotes
Habilitar caché de esquema FALSE
Directorio de caché de esquema
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ p >
Introducción a la estructura de la base de datos
La estructura de la base de datos IBLOCAL está definida por la herramienta del servidor InterBase Interactive SQL Tool (ISQL).
Para usar ISQL para definir una base de datos, primero debe usar el comando Crear base de datos para crear la base de datos. Generalmente las nuevas bases de datos se crean con la extensión GDB. Después de la creación, las tablas de la base de datos se pueden definir en lenguaje SQL. Por ejemplo, la instrucción SQL para crear la tabla EMPLOYEE es la siguiente.
Definir el tipo de datos del nombre de dominio
Crear el nombre de dominio como VARCHAR()
Crear el nombre de dominio como VARCHAR()
Cree el nombre de dominio CREATE FIELD EMPNO AS SMALLINT FOR VARCHAR()
CREATE FIELD DEPTNO AS CHAR()
CHECK(VALUE = OR(VALUE gt; AND VALUE lt=) o value está vacío)
Crear dominio JOBGRADE como VARCHAR()
CHECK (valor gt)
Crear dominio JOBGRADE como SMALLINT
CHECK ( VALOR ANTERIOR Y)
Crear salario de dominio como número ( )
SISTEMA PREDETERMINADO
COMPROBAR (VALOR gt)
Crear tabla de empleados
Lishi Xinzhi/Artículo/programa/Delphi/201311/25125