Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/07/2010, 17:51
spacejockey00
 
Fecha de Ingreso: julio-2010
Mensajes: 1
Antigüedad: 14 años, 8 meses
Puntos: 0
Baja logica en Tablas Relacionadas

Quiero saber para esta Base de datos donde coloco los campos para dar de baja logica a un registro. Debe ser en las tablas y también en las TEAs?



Código:
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