Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 21-07-2007
TJose TJose is offline
Miembro
 
Registrado: may 2003
Posts: 162
Poder: 24
TJose Va por buen camino
Código SQL [-]
create table Tabla1(
   Id dId,
   Apellido dApellido,
   ...   
   IdEtapa dId,
   ...
);

create table Etapas(
   Id dId,
   Etapa dTexto30
);

...

alter table Tabla1 add constraint pk_Tabla1 primary key (Id);
alter table Etapas add constraint pk_Etapas primary key (Id);

...

alter table Tabla1 add constraint fk_Tabla1_01 foreign key (IdEtapa) references Etapas(Id);

en la última sentencia
Código SQL [-]
alter table Tabla1 add constraint fk_Tabla1_01 foreign key (IdEtapa) references Etapas(Id);
obliga a que cuando se setee un valor a idetapa en la tabla Tabla1, este valor exista en la tabla Etapas (campo id)
se podrían según el caso y las necesidades aplicar variaciones, como por ejemplo que cuando se borre un registro de Etapas, borre todos los registros de Tabla1 donde el IdEtapa corresponde a Id de la tabla Etapas. Esto se denomina borrado en cascada. También se puede definir una actualización en cascada

También a través de dominios puede implementarse algún tipo de validación y mantención de la integridad de los datos. Por ejemplo:
Código SQL [-]
create domain dSexo as
char(1)
not null
check (value in ('M','F'));

Saludos
TJose
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Manejando manejadores... Berto2003 Varios 5 06-03-2007 10:38:40
Manejando la tabla ASCII en C aeff C++ Builder 4 22-01-2007 18:02:47
Problema manejando excepciones David OOP 1 28-07-2006 19:17:48
problema manejando datos =( CI>140 Conexión con bases de datos 4 22-09-2003 09:56:16
problemas manejando campos CI>140 Conexión con bases de datos 1 20-09-2003 15:59:40


La franja horaria es GMT +2. Ahora son las 19:58:50.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi