Sie sind auf Seite 1von 8

Database Creation Code

USE [master]
GO
/****** Object: Database [EMS] Script Date: 05-03-2017 20:25:31 ******/
CREATE DATABASE [EMS]
CONTAINMENT = NONE
ON PRIMARY
( NAME = N'EMS', FILENAME = N'C:\Program Files\Microsoft SQL
Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\EMSNEW.mdf' , SIZE = 8192KB , MAXSIZE =
UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'EMS_log', FILENAME = N'C:\Program Files\Microsoft SQL
Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\EMSNEW_log.ldf' , SIZE = 3840KB , MAXSIZE
= 2048GB , FILEGROWTH = 10%)
GO
ALTER DATABASE [EMS] SET COMPATIBILITY_LEVEL = 100
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [EMS].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [EMS] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [EMS] SET ANSI_NULLS OFF
GO
ALTER DATABASE [EMS] SET ANSI_PADDING OFF
GO
ALTER DATABASE [EMS] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [EMS] SET ARITHABORT OFF
GO
ALTER DATABASE [EMS] SET AUTO_CLOSE ON
GO
ALTER DATABASE [EMS] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [EMS] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [EMS] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [EMS] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [EMS] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [EMS] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [EMS] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [EMS] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [EMS] SET DISABLE_BROKER
GO
ALTER DATABASE [EMS] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [EMS] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [EMS] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [EMS] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [EMS] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [EMS] SET READ_COMMITTED_SNAPSHOT OFF
GO
ALTER DATABASE [EMS] SET HONOR_BROKER_PRIORITY OFF
GO
ALTER DATABASE [EMS] SET RECOVERY SIMPLE
GO
ALTER DATABASE [EMS] SET MULTI_USER
GO
ALTER DATABASE [EMS] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [EMS] SET DB_CHAINING OFF
GO
ALTER DATABASE [EMS] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
GO
ALTER DATABASE [EMS] SET TARGET_RECOVERY_TIME = 0 SECONDS
GO
ALTER DATABASE [EMS] SET DELAYED_DURABILITY = DISABLED
GO
ALTER DATABASE [EMS] SET READ_WRITE
GO

1) Login Table
CREATE TABLE [tblLogin](
[LoginId] [int] IDENTITY(1,1) NOT NULL,
[LoginName] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Email] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Username] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Password] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Rights] [int] NOT NULL,
[ModifiedDate] [datetime] NOT NULL
) ON [PRIMARY]

GO

INSERT INTO [tblLogin]


([LoginName]
,[Email]
,[Username]
,[Password]
,[Rights]
,[ModifiedDate])
VALUES
('Administrator'
,'admin@admin.com'
,'admin'
,'admin'
,1
,getdate())

2) Department Table
CREATE TABLE [tblDepartment](
[DepartmentId] [int] IDENTITY(1,1) NOT NULL,
[DepartmentName] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
) ON [PRIMARY]

GO
INSERT INTO [tblDepartment] ([DepartmentName]) VALUES ('Management')
INSERT INTO [tblDepartment] ([DepartmentName]) VALUES ('HR')
INSERT INTO [tblDepartment] ([DepartmentName]) VALUES ('Engineering')
INSERT INTO [tblDepartment] ([DepartmentName]) VALUES ('Accounts')

CREATE TABLE [tblEmployee](


[EmployeeId] [int] IDENTITY(1,1) NOT NULL,
[Name] [varchar](200) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[DOB] [datetime] NOT NULL,
[Degree] [varchar](250) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[Address] [varchar](300) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[City] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[State] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Zip] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Phone] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Mobile] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Email] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Designation] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[DepartmentId] [int] NOT NULL,
[DOJ] [datetime] NOT NULL,
[DOC] [datetime] NOT NULL,
[Bio] [text] COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Photo] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Status] [int] NOT NULL,
CONSTRAINT [PK_tblEmployee] PRIMARY KEY CLUSTERED
(
[EmployeeId] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

3) Trainings Table
CREATE TABLE [tblTrainings](
[TrainingId] [int] IDENTITY(1,1) NOT NULL,
[StartDate] [datetime] NOT NULL,
[EndDate] [datetime] NOT NULL,
[TrainingDetails] [text] COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Effectiveness] [text] COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[JobType] [int] NOT NULL,
[EmployeeId] [int] NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

PROCEDURES
1) Login Procedure
CREATE PROCEDURE [sp_tblLogin]
@LoginId int=null,
@LoginName varchar(100)=null,
@Email varchar(100)=null,
@Username varchar(20)=null,
@Password varchar(20)=null,
@Rights int=null,
@Mode varchar(25)
AS

IF (@Mode='Insert')
IF NOT EXISTS (SELECT * FROM tblLogin WHERE Username=@Username)
BEGIN
INSERT INTO tblLogin(LoginName,Email,Username,Password,Rights,ModifiedDate)
VALUES(@LoginName,@Email,@Username,@Password,@Rights,getdate())
END

IF (@Mode='View')
BEGIN
SELECT * FROM tblLogin
END

IF (@Mode='ViewByID')
BEGIN
SELECT * FROM tblLogin WHERE LoginId = @LoginId
END

IF (@Mode='ChkLogin')
BEGIN
SELECT * FROM tblLogin WHERE Username = @Username and Password = @Password
END

IF (@Mode='Update')
BEGIN
UPDATE [tblLogin]
SET [LoginName] = @LoginName
,[Email] = @Email
,[Username] = @Username
,[Password] = @Password
,[Rights] = @Rights
,[ModifiedDate] = getdate()
WHERE LoginId = @LoginId
END

IF (@Mode='Delete')
BEGIN
DELETE FROM [tblLogin] WHERE LoginId = @LoginId
END
GO

/**********************************************************************************************/]

2) Department Procedure

CREATE PROCEDURE [dbo].[sp_tblDepartment]


@DepartmentId int=null,
@DepartmentName varchar(100)=null,
@Mode varchar(25)
AS

IF (@Mode='Insert')
IF NOT EXISTS (SELECT * FROM tblDepartment WHERE DepartmentName=@DepartmentName)
BEGIN
INSERT INTO tblDepartment(DepartmentName) VALUES(@DepartmentName)
END

IF (@Mode='View')
BEGIN
SELECT * FROM tblDepartment
END

IF (@Mode='ViewByID')
BEGIN
SELECT * FROM tblDepartment WHERE DepartmentId = @DepartmentId
END

IF (@Mode='Update')
BEGIN
UPDATE tblDepartment
SET DepartmentName = @DepartmentName
WHERE DepartmentId = @DepartmentId
END

IF (@Mode='Delete')
BEGIN
DELETE FROM tblDepartment WHERE DepartmentId = @DepartmentId
END

GO

/**********************************************************************************************/

3) Employee Procedure

CREATE PROCEDURE [sp_tblEmployee]


@EmployeeId int=null,
@Name varchar(200)=null,
@DOB datetime=null,
@Degree varchar(200)=null,
@Address varchar(300)=null,
@City varchar(50)=null,
@State varchar(50)=null,
@Zip varchar(50)=null,
@Phone varchar(15)=null,
@Mobile varchar(15)=null,
@Email varchar(100)=null,
@Designation varchar(100)=null,
@DepartmentId int=null,
@DOJ datetime=null,
@DOC datetime=null,
@Bio text=null,
@Photo varchar(100)=null,
@Status int=null,
@Years int=null,
@Mode varchar(25)
AS

IF (@Mode='Insert')
IF NOT EXISTS (SELECT * FROM [tblEmployee] WHERE [Name]=@Name and DOB=@DOB)
BEGIN
INSERT INTO [tblEmployee]
([Name]
,[DOB]
,[Degree]
,[Address]
,[City]
,[State]
,[Zip]
,[Phone]
,[Mobile]
,[Email]
,[Designation]
,[DepartmentId]
,[DOJ]
,[DOC]
,[Bio]
,[Photo]
,[Status])
VALUES
(@Name
,@DOB
,@Degree
,@Address
,@City
,@State
,@Zip
,@Phone
,@Mobile
,@Email
,@Designation
,@DepartmentId
,@DOJ
,@DOC
,@Bio
,@Photo
,@Status)
END

IF (@Mode='View')
BEGIN
SELECT * FROM [tblEmployee]
END

IF (@Mode='ViewActive')
BEGIN
SELECT * FROM [tblEmployee] WHERE Status = 1 ORDER BY DepartmentId, DOJ
END

IF (@Mode='ViewInActive')
BEGIN
SELECT * FROM [tblEmployee] WHERE Status = 0
END

IF (@Mode='ViewByID')
BEGIN
SELECT * FROM [tblEmployee] WHERE EmployeeId = @EmployeeId
END

IF (@Mode='ViewService')
BEGIN
SELECT *,DATEDIFF(year, DOJ, getdate()) as Experience FROM [tblEmployee] WHERE
Status = 1 ORDER BY DOJ
END

IF (@Mode='FilterService')
BEGIN
SELECT *,DATEDIFF(year, DOJ, getdate()) as Experience FROM [tblEmployee] WHERE
Status = 1 and DATEDIFF(Year, DOJ, getdate())=@Years ORDER BY DOJ
END

IF (@Mode='ViewYears')
BEGIN
SELECT distinct DATEDIFF(Year, DOJ, getdate()) as EmpExp FROM [tblEmployee] WHERE
Status = 1
END

IF (@Mode='Update')
BEGIN
UPDATE [tblEmployee]
SET [Name] = @Name
,[DOB] = @DOB
,[Degree] = @Degree
,[Address] = @Address
,[City] = @City
,[State] = @State
,[Zip] = @Zip
,[Phone] = @Phone
,[Mobile] = @Mobile
,[Email] = @Email
,[Designation] = @Designation
,[DepartmentId] = @DepartmentId
,[DOJ] = @DOJ
,[DOC] = @DOC
,[Bio] = @Bio
,[Photo] = @Photo
,[Status] = @Status
WHERE EmployeeId = @EmployeeId
END

IF (@Mode='Delete')
BEGIN
DELETE FROM [tblEmployee] WHERE EmployeeId = @EmployeeId
END

IF (@Mode='Birthday')
BEGIN
SELECT * FROM tblEmployee WHERE DATEPART(MONTH, [DOB]) = DATEPART(MONTH,
getdate()) and Status = 1 ORDER BY DATEPART(DAY, [DOB])
END

IF (@Mode='EmpCount')
BEGIN
SELECT count(EmployeeId) as EmpCount FROM tblEmployee WHERE Status = 1
END

GO

/**********************************************************************************************/

4) Training Procedure

CREATE PROCEDURE [sp_tblTrainings]


@TrainingId int=null,
@StartDate datetime=null,
@EndDate datetime=null,
@TrainingDetails text=null,
@Effectiveness text=null,
@JobType int=null,
@EmployeeId int=null,
@Mode varchar(25)
AS

IF (@Mode='Insert')
BEGIN
INSERT INTO [tblTrainings]
([StartDate]
,[EndDate]
,[TrainingDetails]
,[Effectiveness]
,[JobType]
,[EmployeeId])
VALUES
(@StartDate
,@EndDate
,@TrainingDetails
,@Effectiveness
,@JobType
,@EmployeeId)
END
IF (@Mode='ViewByEmployee')
BEGIN
SELECT * FROM [tblTrainings] WHERE EmployeeId = @EmployeeId AND JobType =
@JobType ORDER BY StartDate
END

IF (@Mode='ViewByID')
BEGIN
SELECT * FROM [tblTrainings] WHERE TrainingId = @TrainingId
END

IF (@Mode='Update')
BEGIN
UPDATE [tblTrainings]
SET [StartDate] = @StartDate,
[EndDate] = @EndDate,
[TrainingDetails] = @TrainingDetails,
[Effectiveness] = @Effectiveness,
[JobType] = @JobType
WHERE TrainingId = @TrainingId
END

IF (@Mode='Delete')
BEGIN
DELETE FROM [tblTrainings] WHERE TrainingId = @TrainingId
END

GO

Das könnte Ihnen auch gefallen