Diapositiva 1 - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Diapositiva 1

Description:

Cada registro tiene un lugar en la secuencia que sirve para identificarlo. ... La definici n de los atributos se hace ... Cama. C42. Precio. Nombre. Art culo ... – PowerPoint PPT presentation

Number of Views:86
Avg rating:3.0/5.0
Slides: 35
Provided by: Ope107
Category:

less

Transcript and Presenter's Notes

Title: Diapositiva 1


1
Tablas
Una tabla es un archivo cuyo nombre inventa el
usuario y cuya extensión es DBF.
Una tabla está formada por registros.
Cada registro está formado por campos.
2
Registros
Todos los registros tienen igual longitud.
Cada registro tiene un lugar en la secuencia que
sirve para identificarlo. Este identificador se
llama número de registro.
3
Campos
Cada registro está formado por campos. Cada campo
se destina para contener un dato. Todos los
registros tienen el mismo diseño de campos.
Cada campo tiene atributos nombre, tipo de
datos, ancho y decimales.
4
La definición de los atributos se hace una sola
vez en el Diseñador de tablas. Esta definición se
llama estructura de la tabla, o también
estructura del registro, porque cada registro se
ajusta a ella.
Para crear una tabla
? Primero se define la estructura.
? Luego se agregan registros con datos concretos.
Para que la tabla exista, debe tener por lo menos
la definición estructural. Si todavía no se le
han agregado registros, se dice que está vacía.
5
Las tablas permiten tres tipos de operaciones con
registros
Alta. Es incorporar un nuevo registro.
Baja. Es eliminar un registro existente. La baja
se hace en dos pasos
Primero se marca el registro a eliminar, lo cual
permite desmarcarlo si cambiamos de opinión.
Luego se lo elimina definitivamente de la tabla.
Cambio. Es modificar el dato de un campo de un
registro existente.
Un recurso para dar altas, bajas y cambios es la
ventana Examinar. La ventana Examinar se puede
ver de dos formas en modo Examinar y en modo
Editar.
6
Modo Examinar. Los campos aparecen uno junto a
otro. Cada renglón es un registro.
7
Modo Editar. Los campos aparecen uno bajo el
otro. Cada banda es un registro.
8
Los modos Examinar y Editar son formas de ver los
registros.
La forma en que se graban los registros en el
disco es uno tras el otro.
O, mostrando sus campos
9
Tipos de tablas
Hay dos tipos de tablas (a) libres y (b) de base
de datos (o tabla base).
Tablas libres. Son la forma más antigua. Toda la
definición estructural se hace en la misma tabla.
En el Diseñador de tablas, éstas se ven así
10
Tablas de bases de datos (o tablas base). Son más
eficientes. Parte de la definición estructural se
guarda en la tabla y parte en la base de datos.
En el Diseñador de tablas, éstas se ven así
11
Diseñador de tablas
El diseñador de tablas tiene 3 fichas.
Ficha Campos. Sirve para definir los campos y sus
atributos. Cada campo ocupa un renglón. En las
tablas de bases de datos, cada campo tiene más
opciones en la parte inferior de la ficha.
Ficha Índices. Sirve para definir índices por
distintos campos. Un índice ordena virtualmente
los registros, sin cambiarlos de lugar en el
archivo, es decir, sin cambiar los números de
registro. Cada índice ocupa un renglón. Las
tablas libres usan tres tipos de índice normal,
candidato y único. Las tablas de bases de datos
agregan el tipo principal.
Ficha Tabla. Muestra información sobre la tabla.
En las tablas bases, permiten definir reglas para
controlar la validez de los registros.
12
Índices
Los índices permiten ordenar virtualmente los
registros de una tabla.
Para construir un índice, hay que darle un
nombre, un tipo y una expresión.
Los índices se guardan en un único archivo, cuyo
nombre es el nombre de la tabla y cuya extensión
es CDX.
Si la tabla se llama Artículos.dbf, el archivo de
índices se llamará Artículos.cdx.
Si queremos un índice por el campo Artículo, lo
podemos llamar Artículo. El campo Artículo se
dice que es la expresión del índice.
Si queremos un índice por el campo Nombre, lo
podemos llamar Nombre. El campo Nombre se dice
que es la expresión del índice.
En el archivo de índices Artículos.cdx, entonces,
se guardarán los índices Artículo y Nombre.
13
Sea que la tabla Artículos tiene los siguientes
tres registros
Si activamos el índice Artículo, en la ventana
Examinar veremos
Si activamos el índice Nombre, en la ventana
Examinar veremos
Sólo puede haber un índice activo en un momento
dado, o ninguno.
Si no hay un índice activo, los registros se
verán en el orden de grabación, es decir, de
acuerdo al número de registro.
14
Tipos de índices
Los tipos de índices son normal, único, candidato
y principal.
Para entenderlos, conviene saber qué son entradas
de índice. Una entrada de índice es como un
renglón de un cuaderno donde se registra
información sobre un registro de la tabla. No
todos los registros tienen entrada en el índice,
porque eso depende del tipo de índice.
Índice normal. Todos los registros de la tabla
tienen entradas en el índice.
Creemos el índice normal Precio por el campo
Precio. Luego activemos ese índice y veamos la
tabla en la ventana Examinar.
15
Índice único. Los registros con igual valor en la
expresión de índice tienen entrada una sola vez
en el índice.
Creemos el índice único Precio por el campo
Precio. Luego activemos ese índice y veamos la
tabla en la ventana Examinar.
El artículo con precio 200 es C42, porque fue el
primero que se encontró al crear el índice.
Un índice único sirve para saber cuántos precios
distintos hay.
16
Índice candidato. Cada registro de la tabla tiene
su entrada en el índice, pero el índice controla
que en la tabla no se repitan valores en la
expresión del índice. Si se da esta situación, se
produce el error Se ha violado la unicidad del
índice.
El que haya tantas entradas como registros,
entonces, se debe al impedimento de duplicar
valores en el campo usado como expresión del
índice.
En la tabla Artículos, podríamos crear índices
candidatos por Artículo y por Nombre, porque sus
valores no se repiten. Pero no podríamos crear un
índice candidato por Precio, porque se repite el
valor 200.
Una tabla puede tener los índices candidatos que
se necesiten.
Índice principal. Funciona como los índices
candidatos, pero una tabla puede tener un solo
índice principal.
17
Expresión de índice
La expresión de un índice puede ser el campo por
el cual se construye el índice.
Pero si nos limitáramos a campos, no podríamos
indexar por otros conceptos. Por ejemplo, sea la
tabla Resumen con los totales mensuales de ventas
y costos.
Si queremos un índice llamado Ganancia, por lo
ganado en cada mes, deberemos usar la expresión
Venta Costo.
18
Sea la tabla Alumnos, con los campos Matrícula,
Nombre, Carrera, etc.
Para crear un índice por Carrera y Nombre,
debemos usar la expresión str (Carrera,2)Nombre.
Parece complicado, pero veremos que no lo es. Si
activamos este índice, la tabla se verá
19
Campos Memo
En la tabla, cada campo tiene un ancho. Ningún
contenido puede superar ese ancho.
A veces, sin embargo, se necesitan contenidos
extensos que varían de un registro a otro, como
las historias clínicas de los pacientes o las
observaciones sobre la conducta de los empleados.
Una historia clínica puede tener un texto de
miles de caracteres. El ancho máximo de un campo
de caracteres, adecuado para texto, es 254.
Pero queremos guardar la historia clínica de cada
paciente en el registro que le corresponde en la
tabla. Cómo solucionar este problema?
Para ello existen los campos memo.
20
Un campo memo tiene ancho 4 en la tabla.
Acá se guarda un número, como si fuera una
llamada a una nota de pie de página en un libro.
El equivalente a la nota de pie de página se
desarrolla en otro archivo, asociado a la tabla,
cuyo nombre es el de la tabla y cuya extensión es
FPT. Este archivo se crea automáticamente al
definir el primer campo memo en el Diseñador de
tablas.
Este archivo permite que la nota no tenga límites
en cuando a extensión.
Cuando un campo memo de un registro contiene una
llamada, en la tabla no se ve este número, porque
es binario y difícil de ver, sino la palabra
Memo, con M mayúscula.
Si un campo memo de un registro no contiene una
llamada, se ve la palabra memo, con m minúscula.
21
Para trabajar con un campo memo, se da doble clic
donde dice memo o Memo. Esto abre una ventana de
edición para introducir o modificar el texto de
la nota.
Para ir guardando el contenido del campo memo se
usa Archivo Guardar. Nunca se abrirá el diálogo
Guardar como, porque ya existe el archivo FPT
donde se guardará el contenido.
Cuando se termina el trabajo de edición, se sale
de la ventana de edición con Archivo Cerrar.
Para guardar y salir de la ventana de edición en
una sola operación, se usa Ctrl W.
Para eliminar todo el contenido del campo memo,
se selecciona el texto, se lo elimina y se pulsa
Ctrl W. En la tabla se visualizará ese campo
como memo, con m minúscula, porque no tiene
contenido.
22
Bases de datos (BD)
Una BD es un archivo donde se anotan o
registran otros archivos, como tablas e índices.
También contiene información adicional sobre los
campos de las tablas.
Guardan otra información, que iremos viendo de a
poco.
Cuando se registra una tabla en una BD, la
tabla deja de ser libre y se convierte en tabla
base. Este cambio de tipo permite agregar
información adicional a la tabla, que se guarda
en la BD. Por ejemplo, reglas y mensajes de
validación de campos y de registros, títulos de
campos, formatos de campos y valores
predeterminados de campos.
Una BD es, en realidad, una tabla con extensión
DBC. Tiene campos predefinidos por VFP.
23
Para agregar una tabla a una BD, la tabla debe
ser libre.
Una tabla no puede pertenecer a más de una BD.
Si una tabla pertenece a BD1 y queremos que
pertenezca a BD2
? Primero tenemos que quitarla de BD1 para
convertirla en libre.
? Después debemos agregarla a BD2.
Cuidado. Cuando quitamos una tabla de una BD,
puede perder mucha información adicional que está
en la BD. Esta información puede referirse a la
misma tabla o ser una información referida a la
relación de esa tabla con otra tabla.
24
Diseñador de bases de datos
Muestra tablas, relaciones y vistas. Tiene el
siguiente aspecto
25
Cursores. Las tablas y vistas se ven como
cursores. Un cursor es una ventanita que muestra
los campos e índices de las tablas y los campos
de las vistas. Un cursor se puede mover y cambiar
de tamaño. Si el contenido no se ve en su
totalidad, aparece una barra de desplazamiento
vertical.
Relaciones. Una relación es un vínculo entre dos
tablas.
En una BD, las relaciones tienen las siguientes
características
? Son permanentes. Existen mientras no se las
destruya.
? Sirven para definir reglas de integridad
referencial.
26
Las relaciones permanentes se trazan arrastrando
de un índice principal o candidato de una tabla a
un índice de cualquier tipo de otra tabla. La
tabla de partida se llama madre, principal o
parent. La tabla de llegada se llama hija,
secundaria o child.
El índice de partida debe ser principal o
candidato.
Si el índice de llegada es principal o candidato,
la relación se dice de uno a uno y se representa
1 1.
Si el índice de llegada es normal o único, la
relación se dice de uno a varios y se representa
1 N.
27
Integridad referencial (IR)
El buen diseño de tablas distribuye la
información de un cliente, proveedor, alumno,
etc., entre varias tablas.
Por ejemplo, los datos referidos al cliente como
persona (código de cliente, nombre, domicilio,
teléfono, CUIT, etc.), se colocan en el registro
de una tabla. Si hay 100 clientes, habrá 100
registros.
Los datos referidos a las compras de un cliente
se colocan en uno o más registros de otra u otras
tablas (código de cliente, artículo, precio,
cantidad). Para unir estos registros con el
registro del cliente, se usa el código de cliente.
Aunque esté en varias tablas, la información del
cliente es un todo. Esto exige cuidar que la
información parcializada de las distintas tablas
sea coherente y no se pierda ninguna parte.
De esto se ocupa la integridad referencial, que
usa reglas para controlar las altas, bajas y
cambios de registros.
28
IR. Reglas para cambios en la clave de la tabla
madre
No se refieren al cambio de cualquier campo, sino
del campo que une ambas tablas, como el código de
cliente en el ejemplo. Se dice que este campo es
la clave de la unión.
Si cambiamos la clave de un cliente en la tabla
madre, corremos el riesgo de romper la integridad
de información del cliente. La ruptura se dará
cuando ese cliente haya realizado compras.
Cascada. Cuando se cambia la clave de un registro
en la tabla madre, se cambia automáticamente
igual clave en los registros de la tabla hija.
Por ejemplo, si cambiamos la clave 125 por 300 de
un cliente en la tabla madre, automáticamente
todas las compras del cliente 125 cambian a 300
en la tabla hija. Si cambiamos el domicilio del
cliente en la tabla madre, esta regla no se
aplica, porque el domicilio no es clave.
29
Restringir. Impide cambiar la clave un registro
en la tabla madre si tiene registros con igual
clave en la tabla hija. Por ejemplo, si el
cliente 125 tiene registros en la tabla hija, no
se podrá cambiar esta clave.
Ignorar. Permite cambiar la clave de un registro
en la tabla madre sin tener en cuenta si tiene o
no registros con igual clave en la tabla hija.
Es, en realidad, la carencia de regla. Esta
carencia puede provocar la disociación de la
integridad de la información, con resultados
caóticos.
Por ejemplo, si cambiamos la clave del cliente
125 por 300 en la tabla madre, se disociarán los
registros de compras con clave 125 en la tabla
hija, que ahora se referirán a un cliente
inexistente.
30
IR. Reglas para bajas de registros en la tabla
madre
Se refieren a marcar un registro para destruir en
la tabla madre. Como este registro tiene una
clave, puede haber registros con igual clave en
la tabla hija. Esto debe ser controlado.
Cascada. Si se marca un registro para destruir en
la tabla madre, se marcan automáticamente los
registros con igual clave en la tabla hija. Pero
si se desmarca el registro en la tabla madre, no
se produce ningún efecto en la tabla hija.
Por ejemplo, si se marca para destruir el
registro con clave 125 en la tabla madre, todos
los registros con clave 125 en la tabla hija se
marcan automáticamente.
Si luego se eliminan físicamente los registros
marcados, se perderá definitivamente toda la
información sobre el cliente 125.
31
Restringir. Impide marcar en la tabla madre un
registro con una clave que existe en registros de
la tabla hija. La regla no se opone a marcar
registros de la tabla madre cuyas claves no
existen en la tabla hija.
Por ejemplo, si el cliente 125 tiene registros de
compras, no podremos marcarlo para destruir, de
modo que nunca podremos eliminar la historia
completa de tal cliente.
Para eliminar toda la historia del cliente 125,
debemos usar otro procedimiento primero habrá
que eliminar sus registros en la tabla hija y
después eliminar el registro de la tabla madre.
Ignorar. Permite marcar un registro de la tabla
madre, sin tener en cuenta si tiene o no
registros con igual clave en la tabla hija. Es
una carencia de regla, que puede provocar caos.
Por ejemplo, si marco para destruir el cliente
125 en la tabla madre y luego lo elimino
definitivamente, en la tabla hija quedarán
compras del cliente 125 que ya no existe en la
madre.
32
IR. Reglas para altas de registros en la tabla
hija
Se refieren a altas de registros en la hija, que
deben tener una clave. Lo lógico es que tal clave
exista en un registro de la madre, para que haya
integridad de información. Si esto no sucediera,
sería un error, situación que trata de controlar
la regla Restringir.
Restringir. Impide dar de alta un registro en la
hija con una clave que no exista en la madre.
Por ejemplo, no puedo dar de alta una compra del
cliente 950, si tal cliente no está definido en
la madre.
La regla controla otra situación sin necesidad
de dar una alta, no podríamos cambiar la clave
125 a 300 de una compra, si no existe un cliente
300 en la madre.
33
Ignorar. Permite dar altas de registros en la
hija, sin tener en cuenta si hay o no un registro
con igual clave en la madre. Es la carencia de
regla, que puede provocar información no íntegra.
Por ejemplo, se puede dar de alta a una compra
con clave 950, exista o no un cliente con esa
clave en la madre.
Tampoco se controla la segunda situación se
puede cambiar una clave en un registro de la
tabla hija sin considerar lo que pasa en la tabla
madre.
Por ejemplo, podremos cambiar una compra del
cliente 125 por 950, exista o no un cliente 950
en la tabla madre.
34
Resumiendo, las reglas de integridad referencial
son
Regla mnemotécnica Madre baja cambió a hija
alta.
Write a Comment
User Comments (0)
About PowerShow.com