Bahria University
Lahore Campus
Assignment # 3
Name: Aqsa Gulzar
Enrollment No: 03-134171-005
Program: BSCS(7A)
Semester: 7
Course title : Data Warehouse
Instructor Name: Sir Junaid
Date assigned: 06/04/2020
Date of submission: 12/04/2020
Hospital Management System:
Database Diagram:
Script:
USE [Hospital_Management_System]
GO
/****** Object: Table [dbo].[bill] Script Date: 4/12/2020 7:50:06 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[bill](
[pid] [int] NULL,
[mcost] [float] NULL,
[tcost] [float] NULL,
[roomcharges] [float] NULL,
[othercharges] [float] NULL,
[billdate] [date] NOT NULL,
PRIMARY KEY CLUSTERED
[billdate] 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
/****** Object: Table [dbo].[department] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[department](
[deptid] [int] NOT NULL,
[dname] [varchar](20) NOT NULL,
[dept_headid] [int] NULL,
PRIMARY KEY CLUSTERED
[deptid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[doctor] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[doctor](
[doc_id] [int] NOT NULL,
[qualification] [varchar](20) NULL,
PRIMARY KEY CLUSTERED
[doc_id] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[Employee] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[Employee](
[empid] [int] NOT NULL,
[fname] [varchar](20) NOT NULL,
[mname] [varchar](20) NULL,
[lname] [varchar](20) NULL,
[gender] [varchar](6) NOT NULL,
[emptype] [varchar](20) NOT NULL,
[Hno] [varchar](10) NULL,
[street] [varchar](20) NULL,
[city] [varchar](20) NULL,
[state] [varchar](20) NULL,
[date_of_joining] [date] NULL,
[email] [varchar](30) NULL,
[deptid] [int] NULL,
[since] [date] NULL,
[date_of_birth] [date] NULL,
PRIMARY KEY CLUSTERED
[empid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[employee_inactive] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[employee_inactive](
[empid] [int] NOT NULL,
[fname] [varchar](20) NOT NULL,
[mname] [varchar](20) NULL,
[lname] [varchar](20) NULL,
[gender] [varchar](6) NOT NULL,
[emptype] [varchar](20) NOT NULL,
[Hno] [varchar](10) NULL,
[street] [varchar](20) NULL,
[city] [varchar](20) NULL,
[state] [varchar](20) NULL,
[date_of_joining] [date] NULL,
[date_of_leaving] [date] NULL,
[email] [varchar](30) NULL,
PRIMARY KEY CLUSTERED
[empid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[had_medicine] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[had_medicine](
[pid] [int] NOT NULL,
[mid] [int] NOT NULL,
[med_date] [date] NOT NULL,
[qty] [int] NULL,
PRIMARY KEY CLUSTERED
[pid] ASC,
[mid] ASC,
[med_date] 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
/****** Object: Table [dbo].[hadtest] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[hadtest](
[pid] [int] NOT NULL,
[tid] [int] NOT NULL,
[testdate] [date] NOT NULL,
PRIMARY KEY CLUSTERED
[pid] ASC,
[tid] ASC,
[testdate] 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
/****** Object: Table [dbo].[in_patient] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[in_patient](
[pid] [int] NOT NULL,
[nid] [int] NULL,
[rid] [int] NULL,
[arrival_date] [date] NOT NULL,
[discharge_date] [date] NULL,
[disease] [varchar](40) NULL,
PRIMARY KEY CLUSTERED
[pid] ASC,
[arrival_date] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[medicine] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[medicine](
[mid] [int] NOT NULL,
[mname] [varchar](40) NOT NULL,
[mcost] [float] NULL,
PRIMARY KEY CLUSTERED
[mid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[nurse_assigned] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[nurse_assigned](
[nid] [int] NOT NULL,
[countpatient] [int] NULL,
PRIMARY KEY CLUSTERED
[nid] 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
/****** Object: Table [dbo].[out_patient] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[out_patient](
[pid] [int] NOT NULL,
[arrival_date] [date] NOT NULL,
[disease] [varchar](40) NULL,
PRIMARY KEY CLUSTERED
[pid] ASC,
[arrival_date] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[patient] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[patient](
[pid] [int] NOT NULL,
[fname] [varchar](20) NOT NULL,
[lname] [varchar](20) NULL,
[gender] [varchar](6) NOT NULL,
[dob] [date] NOT NULL,
[blood_group] [varchar](3) NULL,
[doc_id] [int] NULL,
[HNo] [varchar](10) NULL,
[street] [varchar](20) NULL,
[city] [varchar](16) NULL,
[state] [varchar](20) NULL,
[email] [varchar](30) NULL,
PRIMARY KEY CLUSTERED
[pid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[prev_department] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[prev_department](
[deptid] [int] NOT NULL,
[date_of_joining] [date] NULL,
[date_of_leaving] [date] NULL,
PRIMARY KEY CLUSTERED
[deptid] 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
/****** Object: Table [dbo].[pt_phone] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[pt_phone](
[pid] [int] NOT NULL,
[phoneno] [varchar](10) NOT NULL,
PRIMARY KEY CLUSTERED
[pid] ASC,
[phoneno] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[room] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[room](
[rid] [int] NOT NULL,
[roomtype] [varchar](20) NULL,
PRIMARY KEY CLUSTERED
[rid] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[room_cost] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[room_cost](
[roomtype] [varchar](20) NOT NULL,
[rcost] [int] NULL,
PRIMARY KEY CLUSTERED
[roomtype] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[salary] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[salary](
[etype] [varchar](20) NOT NULL,
[salary] [int] NULL,
PRIMARY KEY CLUSTERED
[etype] 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
SET ANSI_PADDING OFF
GO
/****** Object: Table [dbo].[test] Script Date: 4/12/2020 7:50:07 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[test](
[tid] [int] NOT NULL,
[tname] [varchar](20) NULL,
[tcost] [float] NULL,
PRIMARY KEY CLUSTERED
(
[tid] 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
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[bill] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[department] WITH CHECK ADD FOREIGN KEY([deptid])
REFERENCES [dbo].[Employee] ([empid])
GO
ALTER TABLE [dbo].[doctor] WITH CHECK ADD FOREIGN KEY([doc_id])
REFERENCES [dbo].[Employee] ([empid])
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[had_medicine] WITH CHECK ADD FOREIGN KEY([mid])
REFERENCES [dbo].[medicine] ([mid])
GO
ALTER TABLE [dbo].[had_medicine] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[hadtest] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[hadtest] WITH CHECK ADD FOREIGN KEY([tid])
REFERENCES [dbo].[test] ([tid])
GO
ALTER TABLE [dbo].[in_patient] WITH CHECK ADD FOREIGN KEY([nid])
REFERENCES [dbo].[Employee] ([empid])
GO
ALTER TABLE [dbo].[in_patient] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[in_patient] WITH CHECK ADD FOREIGN KEY([rid])
REFERENCES [dbo].[room] ([rid])
GO
ALTER TABLE [dbo].[nurse_assigned] WITH CHECK ADD FOREIGN KEY([nid])
REFERENCES [dbo].[Employee] ([empid])
GO
ALTER TABLE [dbo].[out_patient] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[prev_department] WITH CHECK ADD FOREIGN KEY([deptid])
REFERENCES [dbo].[Employee] ([empid])
GO
ALTER TABLE [dbo].[pt_phone] WITH CHECK ADD FOREIGN KEY([pid])
REFERENCES [dbo].[patient] ([pid])
GO
ALTER TABLE [dbo].[salary] WITH CHECK ADD FOREIGN KEY([salary])
REFERENCES [dbo].[Employee] ([empid])
GO