6. Curso SQL SERVER -Añadiendo tabla a nuestro diseño para guardar sesiones
- Hola a todos , en esta ocasión vamos continuar con nuestro curso sobre SQL SERVER. En este capítulo del curso vamos a resolver la pregunta que os deje en la anterior entrada del blog. La cuestión era la siguiente :¿Qué debemos modificar en nuestro diseño de base de datos para poder almacenar las sesiones de usuario?
- Para poder almacenar las sesiones es necesario añadir un campo password a la tabla usuarios. Ya que se supone que para poder iniciar sesión el cliente a tenido que logar en nuestro sitio.Además debemos añadir una tabla de SESIONES que este relaccionada por el campo idusuario con la tabla USUARIOS. En esta nueva tabla almacenaremos que usuario inicio sesión en nuestro sitio y a que hora lo hizo, ademas de un token que idetificará de manera única cada sesión. Os dejo una imagen de como quedaría el diagrama de base de datos después de añadir esta tabla:
- - En el vídeo podéis ver los pasos necesarios para agregar este nueva tabla a nuestro esquema. Además genero algunas sesiones ficticias para tener datos en nuestra tabla:
- Os dejo el script de creación de la tabla sesiones y una sentencia que añade un registro a la tabla para tener datos con los que hacer las futuras consultas:
--PARA CREAR LA TABLA
CREATE TABLE [dbo].[SESIONES](
[IdSesion] [int] IDENTITY(1,1) NOT NULL,
[IdUsuario] [int] NOT NULL,
[Token] [varchar](50) NOT NULL,
[FechaInicio] [datetime] NOT NULL,
[FechaFin] [datetime] NULL,
CONSTRAINT [PK_SESIONES] PRIMARY KEY CLUSTERED
(
[IdSesion] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[SESIONES] WITH CHECK ADD CONSTRAINT [FK_SESIONES_USUARIOS] FOREIGN KEY([IdUsuario])
REFERENCES [dbo].[USUARIOS] ([IdUsuario])
GO
ALTER TABLE [dbo].[SESIONES] CHECK CONSTRAINT [FK_SESIONES_USUARIOS]
--PARA HACER INSERT
INSERT INTO dbo.SESIONES(IdUsuario,Token,FechaInicio,FechaFin)
VALUES(1,NEWID(),GETDATE(),NULL)
No hay comentarios:
Publicar un comentario