Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword or section
Like this
44Activity

Table Of Contents

Contenido del libro
Agradecimientos
El Lenguaje SQL
Sistemas de bases de datos Sistemas de bases de datos
Acerca del acceso transparente a bases de datos
Bases de datos relacionales
Información semántica = restricciones
Restricciones de unicidad y claves primarias
Integridad referencial
¿Qué tiene de malo el modelo relacional?
Bases de datos locales y servidores SQL
Características generales de los sistemas SQL
El formato Paradox
El formato DBF7
Criterios para evaluar un servidor SQL
InterBase
Microsoft SQL Server
Oracle
Otros sistemas de uso frecuente
Acciones referenciales
Nombres para las restricciones
Definición y uso de dominios
Modificación de tablas e índices
Creación de vistas
Creación de usuarios
Asignación de privilegios
Roles
Un ejemplo completo de script SQL
Consultas y modificaciones Consultas y modificaciones
La instrucción select: el lenguaje de consultas
Operadores de cadenas
Yo sólo quiero los diez primeros
El valor nulo: enfrentándonos a lo desconocido
Eliminación de duplicados
Productos cartesianos y encuentros
Ordenando los resultados
El uso de grupos
Funciones de conjuntos
La cláusula having
El uso de sinónimos para tablas
Subconsultas: selección única
Subconsultas: los operadores in y exists
Subconsultas correlacionadas
Equivalencias de subconsultas
Encuentros externos
La curiosa sintaxis del encuentro interno
Las instrucciones de actualización
La semántica de la instrucción update
Vistas
Procedimientos almacenados y Procedimientos almacenados y triggers triggers
¿Para qué usar procedimientos almacenados?
Cómo se utiliza un procedimiento almacenado
El carácter de terminación
Procedimientos almacenados en InterBase
Procedimientos que devuelven un conjunto de datos
Recorriendo un conjunto de datos
Triggers, o disparadores
Las variables new y old
Más ejemplos de triggers
Generadores
Simulando la integridad referencial
Excepciones
Alertadores de eventos
Funciones de usuario en InterBase
Transacciones Transacciones
¿Por qué necesitamos transacciones?
El ácido sabor de las transacciones
Transacciones SQL y en bases de datos locales
Transacciones implícitas y explícitas
Niveles de aislamiento de transacciones
Registros de transacciones y bloqueos
Lecturas repetibles mediante bloqueos
Variaciones sobre el tema de bloqueos
El jardín de los senderos que se bifurcan
¿Bloqueos o versiones?
Niveles de aislamiento y transacciones implícitas
Microsoft SQL Server Microsoft SQL Server
Herramientas de desarrollo en el cliente
Creación de bases de datos con MS SQL Server
Bases de datos en la versión 7
Tipos de datos predefinidos
Tipos de datos definidos por el programador
Creación de tablas y atributos de columnas
Indices
Seguridad en MS SQL Server
Procedimientos almacenados
Cursores
Triggers en Transact-SQL
Integridad referencial mediante triggers
Triggers anidados y triggers recursivos
Sobreviviendo a SQL*Plus
Instancias, bases de datos, usuarios
Tipos de datos
Indices en Oracle
Organización física de las tablas
Procedimientos almacenados en PL/SQL
Consultas recursivas
Planes de optimización en Oracle
Triggers en PL/SQL
La invasión de las tablas mutantes
Paquetes
Actualización de vistas mediante triggers
Secuencias
Tipos de objetos
Arquitectura y plataformas
Aislamiento de transacciones
Creación de tablas y restricciones
Triggers
El Motor de Datos de Borland El Motor de Datos de Borland
Controladores locales y SQL Links
Acceso a fuentes de datos ODBC
¿Dónde se instala el BDE?
El Administrador del Motor de Datos
Configuración del registro e información de versión
El concepto de alias
Parámetros del sistema
Parámetros de los controladores para BD locales
Bloqueos oportunistas
Parámetros comunes a los controladores SQL
Configuración de InterBase
Configuración de MS SQL Server
Configuración de Oracle
Configuración de otros sistemas
Creación de alias para bases de datos locales y SQL
Alternativas al Motor de Datos
Conjuntos de datos: tablas Conjuntos de datos: tablas
La jerarquía de los conjuntos de datos
La arquitectura de objetos del Motor de Datos
¿Tabla o consulta?
Tablas (por el momento)
Navegación y relaciones master/detail
El estado de un conjunto de datos
Acceso a campos Acceso a campos
Creación de componentes de campos
Clases de campos
Nombre del campo y etiqueta de visualización
Acceso a los campos por medio de la tabla
Extrayendo información de los campos
Las máscaras de formato y edición
Los eventos de formato de campos
Campos calculados
Campos de búsqueda
El orden de evaluación de los campos
Extensiones para los tipos de objetos de Oracle 8
Información sobre campos
Validaciones y el Diccionario de Validaciones y el Diccionario de Datos Datos
Validación a nivel de campos
Propiedades de validación
El Diccionario de Datos
Conjuntos de atributos
Importando bases de datos
Evaluando restricciones en el cliente
Controles data-aware
Los enlaces de datos
Creación de controles de datos
Los cuadros de edición
Editores de texto
Textos no editables
Combos y listas con contenido fijo
Combos y listas de búsqueda
Esencia y apariencia
Casillas de verificación y grupos de botones
Imágenes extraídas de bases de datos
La técnica del componente del pobre
Permitiendo las modificaciones
La clase TBlobStream
Rejillas y barras de navegación Rejillas y barras de navegación
El uso y abuso de las rejillas
El funcionamiento básico de una rejilla de datos
Opciones de rejillas
Columnas a la medida
Guardar y restaurar los anchos de columnas
Con qué índices podemos contar
Especificando el índice activo
Indices en dBase
Especificando un orden en tablas SQL
Búsqueda basada en índices
Implementación de referencias mediante FindKey
Búsquedas utilizando SetKey
Experimentando con SetKey
¿Por qué existe SetKey?
Rangos: desde el Alfa a la Omega
El ejemplo de rangos de casi todos los libros
Más problemas con los índices de dBase
Cómo crear un índice temporal
Filtros
Esto no lo dice la documentación…
Un ejemplo con filtros rápidos
El evento OnFilterRecord
Filtros latentes
Filter By Example
Búsqueda en una tabla de detalles
Navegación mediante consultas Navegación mediante consultas
El componente TQuery como conjunto de datos
¿Quién ejecuta las instrucciones?
Consultas actualizables
Siempre hacia adelante
Consultas paramétricas
Consultas dependientes
La preparación de la consulta
Visual Query Builder
Comunicación cliente/servidor Comunicación cliente/servidor
Nuestra arma letal: SQL Monitor
Apertura de tablas y consultas
La caché de esquemas
Operaciones de navegación simple
Búsquedas exactas con Locate
Búsquedas parciales
Una solución para búsquedas parciales rápidas
Búsquedas con filtros latentes
C++ Builder: actualizaciones y concurrencia
Actualizaciones Actualizaciones
Los estados de edición y los métodos de transición
Asignaciones a campos
Confirmando las actualizaciones
Diferencias entre Insert y Append
Métodos abreviados de inserción
El Gran Experimento
El Gran Experimento: tablas locales
El Gran Experimento: tablas SQL
Pesimistas y optimistas
El modo de actualización
La relectura del registro actual
Eliminando registros
Actualización directa vs variables en memoria
Automatizando la entrada de datos
Entrada de datos continua
Actualizaciones mediante Actualizaciones mediante consultas consultas
Instrucciones del DML
Almacenar el resultado de una consulta
¿Ejecutar o activar?
Nuevamente como por azar
Actualización sobre cursores de consultas
Utilizando procedimientos almacenados
Eventos de transición de estados Eventos de transición de estados
Cuando el estado cambia…
Reglas de empresa: ¿en el servidor o en el cliente?
Inicialización de registros: el evento OnNewRecord
Validaciones a nivel de registros
Antes y después de una modificación
Propagación de cambios en cascada
Actualizaciones coordinadas master/detail
Antes y después de la apertura de una tabla
Tirando de la cadena
Los eventos de detección de errores
La estructura de la excepción EDBEngineError
Aplicaciones de los eventos de errores
Bases de datos y transacciones Bases de datos y transacciones
El componente TDatabase
Objetos de bases de datos persistentes
Cambiando un alias dinámicamente
Bases de datos y conjuntos de datos
El directorio temporal de Windows
Compartiendo la conexión
Control explícito de transacciones
Entrada de datos y transacciones
¿Para qué sirven las sesiones?
Especificando la sesión
Cada sesión es un usuario
El inicio de sesión y la inicialización del BDE
Sesiones e hilos paralelos
Información sobre esquemas
El MiniExplorador de Bases de Datos
Gestión de alias a través de TSession
Directorios privados, de red y contraseñas
Actualizaciones en caché Actualizaciones en caché
Activación de las actualizaciones en caché
Confirmación de las actualizaciones
Marcha atrás
El estado de actualización
El filtro de tipos de registros
Un ejemplo integral
El Gran Final: edición y entrada de datos
Combinando la caché con grabaciones directas
Prototipos y métodos virtuales
Cómo actualizar consultas “no” actualizables
El evento OnUpdateRecord
Detección de errores durante la grabación
¿Tablas ... o consultas en caché?
Programación distribuida
Conjuntos de datos clientes Conjuntos de datos clientes
Creación de conjuntos de datos
Cómo el TClientDataSet obtiene sus datos
Edición de datos
Conjuntos de datos anidados
Campos calculados internos
Indices, grupos y valores agregados
El Modelo de Objetos El Modelo de Objetos Componentes Componentes
Un modelo binario de objetos
¡Yo quiero ver código!
Clases, objetos e interfaces
El lenguaje de descripción de interfaces
Identificadores globales únicos
Interfaces
La interfaz IUnknown
Tiempo de vida
Introspección
Cómo obtener un objeto COM
Punteros inteligentes a interfaces
Servidores COM Servidores COM
Interceptando operaciones en directorios
Dentro del proceso, en la misma máquina, remoto
Carga y descarga de la DLL
OLE y el registro de Windows
Registrando el servidor
Implementación de interfaces
El huevo, la gallina y las fábricas de clases
Implementando la fábrica de clases
¿Por qué existe la Automatización OLE?
Controladores de automatización con variantes
Propiedades OLE y parámetros por nombre
Interfaces duales
Bibliotecas de tipos
Importación de bibliotecas de tipos
Eventos
Escuchando a Word
Automatización OLE: servidores Automatización OLE: servidores
Informes automatizados
El objeto de automatización
La parte cliente
Declarando una interfaz común
Modelos de instanciación
Modelos de concurrencia
Un servidor de bloqueos
La implementación de la lista de bloqueos
Control de concurrencia
Poniendo a prueba el servidor
Cuándo utilizar y cuándo no utilizar Midas
Midas y las bases de datos de escritorio
Módulos de datos remotos
Proveedores
Servidores remotos y conjuntos de datos clientes
Grabación de datos
Control de errores durante la resolución
Reconciliación
Relaciones master/detail y tablas anidadas
Extendiendo la interfaz del servidor
Alguien llama a mi puerta
Tipos de conexión
Balance de carga simple
Interfaces duales en Midas
Coge el dinero y corre: trabajo sin conexión
Servidores de Internet Servidores de Internet
El modelo de interacción en la Web
Aprenda HTML en 14 minutos
Extensiones del servidor y páginas dinámicas
¿Qué necesito para este seguir los ejemplos?
Acciones
Generadores de contenido
Generadores de tablas
Mantenimiento de la información de estado
¿Le apetece una galleta?
Un simple navegador
ActiveForms: formularios en la Web
Leftoverture
La historia del producto
La filosofía del producto
Plantillas y expertos para QuickReport
El corazón de un informe
Las bandas
El evento BeforePrint
Componentes de impresión
El evaluador de expresiones
Utilizando grupos
Eliminando duplicados
Informes master/detail
Informes compuestos
Previsualización a la medida
Listados al vuelo
Enviando códigos binarios a una impresora
Gráficos y biorritmos
El componente TDBChart
Componentes no visuales de Decision Cube
Rejillas y gráficos de decisión
Uso y abuso de Decision Cube
Modificando el mapa de dimensiones
Descenso a los abismos Descenso a los abismos
Inicialización y finalización del BDE
El control de errores
Sesiones y conexiones a bases de datos
Reestructuración
Eliminación física de registros borrados
Un ejemplo de iteración
Propiedades
Las funciones de respuesta del BDE
Creación de instalaciones Creación de instalaciones
Los proyectos de InstallShield Express
La presentación de la instalación
Las macros de directorios
Descripción del modelo de datos
Libretas de ahorro en MS SQL Server
Ahora, en Oracle
El módulo de datos
Transacciones explícitas
Gestión de libretas y operaciones
Entrada de apuntes
La ventana principal
Corrigiendo el importe de un apunte
Ejemplos: un servidor de Internet Ejemplos: un servidor de Internet
Búsqueda de productos
El motor de búsquedas
Creando la extensión Web
Generando la tabla de resultados
Documentos HTML y sustitución de etiquetas
Respondiendo a las acciones
APENDICE: Excepciones APENDICE: Excepciones
Sistemas de control de errores
Contratos incumplidos
Cómo se indica un error
La ejecución del programa fluye en dos dimensiones
Pagamos nuestras deudas
La destrucción de objetos dinámicos
El bloque de protección de recursos
Cómo tranquilizar a un programa asustado
Ejemplos de captura de excepciones
Capturando el objeto de excepción
0 of .
Results for:
No results containing your search query
P. 1
Manual Borland C++ Builder Con SQL (Espa_ol)

Manual Borland C++ Builder Con SQL (Espa_ol)

Ratings: (0)|Views: 3,415 |Likes:

More info:

Published by: Uriel Alexander Loria on Oct 13, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

06/05/2013

pdf

text

original

You're Reading a Free Preview
Pages 16 to 46 are not shown in this preview.
You're Reading a Free Preview
Pages 62 to 230 are not shown in this preview.
You're Reading a Free Preview
Pages 246 to 307 are not shown in this preview.
You're Reading a Free Preview
Pages 323 to 708 are not shown in this preview.
You're Reading a Free Preview
Pages 724 to 795 are not shown in this preview.

Activity (44)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
kgg1987 liked this
Adrián Cejas liked this
Adrián Cejas liked this
Natanael Dinzey liked this
qfacu liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->