Baja Lógica en Tablas Relacionadas
Publicado por Max Payne (2 intervenciones) el 18/07/2010 18:59:20
Quiero saber para esta Base de datos donde coloco los campos para hacer una baja lógica. Debe ser en las tablas y también en las TEAs?
El código es para SQL Server 2005 Express
create table tblpersonas
(
idpersona int identity primary key,
dni int not null,
apellido nvarchar(64) not null,
nombre nvarchar(64) not null,
direccion nvarchar(128) not null,
telefono bigint not null
);
create table tblusuariotipo
(
idusuariotipo int identity primary key,
tipo nvarchar(16) not null
);
insert into tblusuariotipo (tipo) values ('dba');
insert into tblusuariotipo (tipo) values ('periodista');
insert into tblusuariotipo (tipo) values ('editor');
create table tblusuarios
(
idpersona int not null foreign key references tblpersonas(idpersona),
idusuariotipo int not null foreign key references tblusuariotipo(idusuariotipo),
nombreusuario nvarchar(64) not null,
contraseña nvarchar(64) not null,
primary key(idpersona)
);
create table tblperiodistas
(
idpersona int not null foreign key references tblusuarios(idpersona),
seudonimo nvarchar(64) not null,
fechaingreso smalldatetime not null
primary key(idpersona)
);
create table tbleditores
(
idpersona int not null foreign key references tblusuarios(idpersona),
primary key(idpersona)
);
create table tblnotaestado
(
idestadonota int identity primary key,
estado nvarchar(16)
);
insert into tblnotaestado (estado) values ('borrador');
insert into tblnotaestado (estado) values ('finalizada');
insert into tblnotaestado (estado) values ('rechazada')
insert into tblnotaestado (estado) values ('aprobada');
create table tblnotas
(
idnota int identity primary key,
autor nvarchar(64) not null,
fechapublicacion smalldatetime,
imagen nvarchar(256),
cuerpo nvarchar(max),
titulo nvarchar(128),
idestadonota int not null foreign key references tblnotaestado(idestadonota)
);
create table tblperiodistasnotas
(
idpersona int not null foreign key references tblperiodistas(idpersona),
idnota int not null foreign key references tblnotas(idnota),
primary key (idpersona, idnota)
);
go
El código es para SQL Server 2005 Express
create table tblpersonas
(
idpersona int identity primary key,
dni int not null,
apellido nvarchar(64) not null,
nombre nvarchar(64) not null,
direccion nvarchar(128) not null,
telefono bigint not null
);
create table tblusuariotipo
(
idusuariotipo int identity primary key,
tipo nvarchar(16) not null
);
insert into tblusuariotipo (tipo) values ('dba');
insert into tblusuariotipo (tipo) values ('periodista');
insert into tblusuariotipo (tipo) values ('editor');
create table tblusuarios
(
idpersona int not null foreign key references tblpersonas(idpersona),
idusuariotipo int not null foreign key references tblusuariotipo(idusuariotipo),
nombreusuario nvarchar(64) not null,
contraseña nvarchar(64) not null,
primary key(idpersona)
);
create table tblperiodistas
(
idpersona int not null foreign key references tblusuarios(idpersona),
seudonimo nvarchar(64) not null,
fechaingreso smalldatetime not null
primary key(idpersona)
);
create table tbleditores
(
idpersona int not null foreign key references tblusuarios(idpersona),
primary key(idpersona)
);
create table tblnotaestado
(
idestadonota int identity primary key,
estado nvarchar(16)
);
insert into tblnotaestado (estado) values ('borrador');
insert into tblnotaestado (estado) values ('finalizada');
insert into tblnotaestado (estado) values ('rechazada')
insert into tblnotaestado (estado) values ('aprobada');
create table tblnotas
(
idnota int identity primary key,
autor nvarchar(64) not null,
fechapublicacion smalldatetime,
imagen nvarchar(256),
cuerpo nvarchar(max),
titulo nvarchar(128),
idestadonota int not null foreign key references tblnotaestado(idestadonota)
);
create table tblperiodistasnotas
(
idpersona int not null foreign key references tblperiodistas(idpersona),
idnota int not null foreign key references tblnotas(idnota),
primary key (idpersona, idnota)
);
go
Valora esta pregunta
0