Chapter 5 Chapter 5
5.2 Database development
Database creation script
CREATE DATABASE DMS
Database
table creation scripts
/**+*** object: Table [dbo].[Registration]
SET ANSI-NULLS ON GO
SET QUOTED-IDENTIFIER ON GO
SETANSI-PADDING ON GO
CREATE TABLE Idbo].IRegistration] (
Script Date: 5173/2019 8:36:51 PM *****+/
[UserlD] [int] IDENTIW(1,1) t!or FOR REPLICATION NCT NULL, [UserName] [varchar]{50) NU LL,
lSessionlDl [intj NU LL, lDepartmentlDl Iint] NULL, [Email] [varchar](50) N{-J LL, [ContactNo] [varchar](50] N u LL, lloginlDl [varchar]{50) ltlU LL, [PasswordDate] [date] t,]ULL, [Password] [nvarchar]{50) NULL, [ConfirmPassword] [nvarchar] (5O) N U LL, [lsloginDMS] [bit] NULL,
IlsActive] [bit] NULL, lstatuslDl [int] NULL,
CONSTRAINT IPK_Registration] PRIMARY KEY CLUSTERED
:
IUserlD] ASC
WITH iPAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW-ROW-LOCKS = ON, AIIOW_PAGE_LOCKS = ON) ON [PRIMARY]
,oN [PRTMARY]
GO
SETANSI_PADDING OFF GO
lj'j.;*
Object: Table [dbol.[StdntRegistration] Script Date: 5/1.312019 8:35:51 PM ******/SETANSI_NULTS ON GO
SET QUOTED-IDENTIFIER ON GO
SETANSI-PADDING ON
60
CREATE TABTE Idbo] [StdntRegistration] ( lUserlDl [int] IDENTIW(1.1) NCr NUtL, [UserName] [varchar]{50) N U LL,
36
lPage
[DepartmentlD] [int] NULL, lSessionlDl [int] NULL, [Email] [varchad{50} NULL, lContactNol [varchar](50) NU LL, [LoginlD] [varchar](50) N U LL, [PasswordDate] [date] NULL, [Password] [nvarchar](50) N U LL, IConflrmPassword] [nvarchar](S) NULL, [lsLoginDMS] [bit] NU LL,
[lsActive] [bit] NULL, lstatuslDl [int] NULL,
CONSTRAINT IPK_StdntRegistration] PRIMARY KEY CLUSTERED (
IUserlD] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) oN IPRIMARY]
)oN [PRTMARY]
GO
SET ANSI_PADDING OFF GO
/*+**** Object: Table [dbo].[DMS_Feedback] Script Date: 5/L3l2Ot9 8:36:51 PM ******/
SET ANSI-NULLs ON GO
SET qUOTED_IDENTIFIER ON GO
SETANSI_PADDING ON GO
CREATE TABLE [dbo].[DMs_Feedback](
[FeedbacklD] [intl IDENTITY(1,1) NoT NULL, lsubjectl [varchar] (1fi)) NU LL,
[Details] [varchar]{max) NU LL, [SenderlD] [int] l.lU LL, lSessionlDl [int] NtJLL, [ReceiverlD] [int] NULL,
[ReceiverType] [varchar](50) NULL,
CONSTRAINT [PK_D MS_Feed back] PRI MARY KEY CLUSTERED
(
IFeedbacklD] ASC
)wlTH iPAD-INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON IPRIMARY] TEXTIMAGE-ON [PRIMARY]
GO
SETANSI-PADDING OFF GO
/+****+ Object: Table [dbo].[DMS_Files] Script Date: 5/1312079 8;36:51 PM +*+*+*/
SET ANSI-NULLS ON GO
SET QUOTED-IDENTIFIER ON GO
SETANSI-PADDING ON
3TlPage
I
a
I
a
GO
CREATE TABLE [dbo].IDMS_Files](
[FilelD] [int] IDENTITY(1,1) NoT NULL.
[TagName] [varchar](50) NULL, [Description] [varchar](10O] NU LL, [FileName] [varchar](50) N U Lt-, [FilePath] [varchar](5fr)) N U LL, [ContentType] [nvarchar]{50) NULL.
[Data] [varbinary]{max} NU LL, [CatReflD] [int] NULL, [AlbumReflD] [int] NULL, [DrwReflD] [int] NULt, [SessionlD] [int] NULL, lUserlDl Iint] NUI-1,
CONSTRAINT IPK_DMS_Files] PRIMARY KEY CLUSTERED i
IFilelD]ASC
)wlTH {PAD-|NDEX = OFF, STATISTICS-NORECOMPUTE = OFF, IGNORE-DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON IPRIMARY]
) ON [PRIMARYI TETilMAGE_ON [PRIMARY]
GO
SETANSI-PADDING OFF GO
/****** Object: Table [dbol.[DMS_Result] Script Date: 5173/2019 8:36:51 pM ******/
SET ANSI_NULLs ON GO
SET QUOTED-IDENTIFIER ON GO
SET ANSI-PADDING ON GO
CREATE TABLE [dbo]"IDMS_Result](
[ResultlD] [int] IDENTITY(1,1] Nor NtjLL, lstudentlDl [int] NULL,
[SessionlD] [int] NULL, [SessionDetailslD] [int] NUtL,
[SessionDetailsName] [varchar]{5O} N U LL, [CourselD] [int] NULL,
[Credit] [float]NULL, [Assingment] [int] NULL, [ClassTest] [int] NULL, [Attendance] [int] NULt., lMidllintlNULL, [Final] [int] NUrL,
IMarks] AS [((([Assingment]+[ClassTest])+[Attendance])+[Mid]]+[Final]], IGPAI [float]NULL,
[Grade] [varchar](10) NULL, [Status] [bit] NULL,
CONSTRAINT [PK_DMS_Resu ltl PRt MARY KEY CLUSTERED (
IResultlD]ASC
)WITH (PAD-INDEX = OFF, STATISTICS-NORECOMPUTE = OFF, IGNORE-DUP-KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
)oN [PRTMARY]
GO
33fPage
SETANSI-PADDING OFF GO
Store procedure creation scripts
usE [DMS]
GO
I * + * * * * Object : Stored Procedu re [dbo]. [DMS_CetAl lFile]
SETANSI_NULLS ON GO
SET QUOTED-IDENTIFIER ON GO
CREATE PROCEDURE Idbo].IDMs_GetAttFite]
AS BEGIN
Script Date:5/t3/2079 8:36:51 PM ******/
Script Date: 5173/2019 8:36:51 PM *****+/
SELECT
FilelD, TagName, IDescription], IFileName], ContentType, Data,
DR.DrawerName, C.CabinetName, A.AlbumName FROM [dbo].[DMS_Files] D
LEFT JOIN [dbo].[DMS_Cabinet] C on C.CabinetlD = D CatReftD LEFT lOlN [dbo].[DMS_AIbum] A on A.AlbumtD = D.AtbumReftD LEFT JOIN [dbo].[DMS_Drawer] DR on DR.DrawertD = D.DrwReftD ORDER BY FilelD DESC
SET NOCOUNT ON;
END
GO
f +*t**+ Object: StoredProcedure [dbo].IDMS_GetResultMarkSheetByResultlD]
SET ANSI-NULLS ON GO
SET QUOTED_I DENTI FI ER ON GO
CREATE PROCEDURE [dbo].[DMS_GetResultMarksheetByResulttD]
@ResulttD int AS
BEGIN
39
lPage
SELECT [ResultlD]
,S.LoginlD ,S.UserName
,SE.SessionName Batch ,SD.SessionDetailsName ,C.CourseName
,C.CourseCode ,C.CourseCredit ,[Assingment]
, IClassTest]
,lAttendance]
,IMid]
, [Final]
,[Marks]
,[GPA]
,[Grade]
FROM [DMs]. [dbo]. [DMS_Result] R
LEFT iOlN DMS.dbo.StdntRegistration S ON S.UsertD=R.StudentlD LEFT iOlN DMS.dbo.DMS_Course C ON C.CourselD=R.CourselD
LEFT JOIN DMS.dbo.DMS-sessionDetails SD ON SD,SessionDetailslD=R.SessionDetailslD
LE FT I Ol N DMS.dbo.DMS_Session SE ON SE.SessiontD=S.SessiontD WHERE R. ResultlD=@ResulttD
--ORDER BY FilelD DESC SET NOCOUNT ON;
GO
fr. *a * * Object: StoredProcedure [dbo].[DMS_SaveResult]
SETANSI-NULLS ON GO
SET QUOTED-IDENTIFI ER ON GO
Script Date: 5lt3l2979 8:36:51 PM ******/
CREATE PROCEDURE [dbo].[DMS_SaveResutt]
(
@xmlResult
@SessionDetai lslDint,
@CourselD
@ResultlD
xml,
AS BEGIN
END
int, int
i
OUTPUT
zCIlPage
t
l.
BEGIN TRANSACTION BEGIN
INSERT INTO [DMs]. [dbo]. IDMS_Resultl
(
StudentlD, SessionDetailslD, CourselD, Assingment, ClassTest, Attendance, Mid, Final, lstatusl
SELECT doc.c.value('@StdtD','int'),
@SessionDetailslD,
@CourselD,
doc.c.value('@Assingment','int'), doc.c.value('@ClassTest','int' ), doc.c.val ue('@Attendance','int'), doc.c.value('@Mid','int'), doc.c.value('@Final','int'), 0
FROM @xmlResult. nodes('/publishResult/results' )doc{c}
SET @ResultlD = @@IDENT|W END
COMMIT TRANSACTION BEGIN TMNSACTION
UPDATE DMS_Result SET Grade = CASE
WHEN Marks >= 8O THEN 'A+'
WHEN Marks>=75 AND Marks<80 THEN 'A, WHEN Marks>=70 AND Marks<75 THEN 'A-' WHEN Marks>=65 AND Marks<70 THEN 'B+' WHEN Marks>=50 AND Marks<55 THEN 'B' WHEN Marks>=55 AND Marks<60 THEN ,Br WHEN Marks>=50 AND Marks<55 THEN 'C+' WHEN Marks>4s AND Marks<S0 THEN 'C' WHEN Marks>=tl0 AND Marks<45 THEN ,D, ELSE'F'END,
GPA = CASE
WHEN Marks >= 80 THEN 4.(E
WHEN Marks>=75 AND Marks<8O THEN 3.75 WHEN Marks>=70 AND Marks<75 THEN 3.50 WHEN Marks>=Gs AND Marks<7o THEN 3.25 WHEN Marks>=60 AND Marks<65 THEN 3.00 WHEN Marks>=S5 AND Marks<60 THEN 2.75 WHEN Marks>=50 AND Marks<55 THEN 2.50 WHEN Marks>=45 AND Marks<50 THEN 2.25 WHEN Marks>40 AND Marks<45 THEN 2.00
41
lPage
ELSE O.OO END WHERE GRADE 15 NULI-
COMMIT TRANSACTION END
Database
table with value
j. e@rylrsr - lbrtms {D6rc8&NNdr@D - M.ffi s sr€rl.ffituo