/****** Object: Database [students] Script Date: 12/1/2020 9:32:41 PM ******/ IF NOT EXISTS (SELECT name FROM sys.databases WHERE name = N'students') BEGIN CREATE DATABASE [students] CONTAINMENT = NONE ON PRIMARY ( NAME = N'students', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\students.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ) LOG ON ( NAME = N'students_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA\students_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB ) WITH CATALOG_COLLATION = DATABASE_DEFAULT END GO ALTER DATABASE [students] SET COMPATIBILITY_LEVEL = 150 GO IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')) begin EXEC [students].[dbo].[sp_fulltext_database] @action = 'enable' end GO ALTER DATABASE [students] SET ANSI_NULL_DEFAULT OFF GO ALTER DATABASE [students] SET ANSI_NULLS OFF GO ALTER DATABASE [students] SET ANSI_PADDING OFF GO ALTER DATABASE [students] SET ANSI_WARNINGS OFF GO ALTER DATABASE [students] SET ARITHABORT OFF GO ALTER DATABASE [students] SET AUTO_CLOSE OFF GO ALTER DATABASE [students] SET AUTO_SHRINK OFF GO ALTER DATABASE [students] SET AUTO_UPDATE_STATISTICS ON GO ALTER DATABASE [students] SET CURSOR_CLOSE_ON_COMMIT OFF GO ALTER DATABASE [students] SET CURSOR_DEFAULT GLOBAL GO ALTER DATABASE [students] SET CONCAT_NULL_YIELDS_NULL OFF GO ALTER DATABASE [students] SET NUMERIC_ROUNDABORT OFF GO ALTER DATABASE [students] SET QUOTED_IDENTIFIER OFF GO ALTER DATABASE [students] SET RECURSIVE_TRIGGERS OFF GO ALTER DATABASE [students] SET DISABLE_BROKER GO ALTER DATABASE [students] SET AUTO_UPDATE_STATISTICS_ASYNC OFF GO ALTER DATABASE [students] SET DATE_CORRELATION_OPTIMIZATION OFF GO ALTER DATABASE [students] SET TRUSTWORTHY OFF GO ALTER DATABASE [students] SET ALLOW_SNAPSHOT_ISOLATION OFF GO ALTER DATABASE [students] SET PARAMETERIZATION SIMPLE GO ALTER DATABASE [students] SET READ_COMMITTED_SNAPSHOT OFF GO ALTER DATABASE [students] SET HONOR_BROKER_PRIORITY OFF GO ALTER DATABASE [students] SET RECOVERY FULL GO ALTER DATABASE [students] SET MULTI_USER GO ALTER DATABASE [students] SET PAGE_VERIFY CHECKSUM GO ALTER DATABASE [students] SET DB_CHAINING OFF GO ALTER DATABASE [students] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF ) GO ALTER DATABASE [students] SET TARGET_RECOVERY_TIME = 60 SECONDS GO ALTER DATABASE [students] SET DELAYED_DURABILITY = DISABLED GO ALTER DATABASE [students] SET ACCELERATED_DATABASE_RECOVERY = OFF GO EXEC sys.sp_db_vardecimal_storage_format N'students', N'ON' GO ALTER DATABASE [students] SET QUERY_STORE = OFF GO /****** Object: Table [dbo].[Classes] Script Date: 12/1/2020 9:32:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Classes]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Classes]( [ClassID] [int] IDENTITY(1,1) NOT NULL, [Name] [varchar](100) NULL, [Description] [varchar](max) NULL, [Cost] [decimal](18, 2) NULL, [LocationID] [int] NULL, [TimeStamp] [datetime] NULL, [DeleteFlag] [bit] NULL, [Capacity] [int] NULL, CONSTRAINT [PK_Classes] PRIMARY KEY CLUSTERED ( [ClassID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] END GO /****** Object: Table [dbo].[Locations] Script Date: 12/1/2020 9:32:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Locations]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Locations]( [LocationID] [int] IDENTITY(1,1) NOT NULL, [Name] [varchar](100) NULL, [TimeStamp] [datetime] NULL, [DeleteFlag] [bit] NULL, CONSTRAINT [PK_Locations] PRIMARY KEY CLUSTERED ( [LocationID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO /****** Object: Table [dbo].[Users] Script Date: 12/1/2020 9:32:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Users]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[Users]( [UserID] [int] IDENTITY(1,1) NOT NULL, [FirstName] [varchar](100) NULL, [LastName] [varchar](100) NULL, [Email] [varchar](100) NULL, [Password] [varchar](50) NULL, [TimeStamp] [datetime] NULL, [DeleteFlag] [bit] NULL, [IsTeacher] [bit] NULL, CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED ( [UserID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO /****** Object: Table [dbo].[UsersAttendance] Script Date: 12/1/2020 9:32:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[UsersAttendance]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[UsersAttendance]( [UserAttendanceID] [int] IDENTITY(1,1) NOT NULL, [UserID] [int] NULL, [ClassID] [int] NULL, [TimeStamp] [datetime] NULL, [DeleteFlag] [bit] NULL, [NewField] [bit] NULL, CONSTRAINT [PK_UsersAttendance] PRIMARY KEY CLUSTERED ( [UserAttendanceID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO /****** Object: Table [dbo].[UsersGrades] Script Date: 12/1/2020 9:32:41 PM ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[UsersGrades]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[UsersGrades]( [UserGradeID] [int] IDENTITY(1,1) NOT NULL, [UserID] [int] NULL, [ClassID] [int] NULL, [Grade] [int] NULL, [TimeStamp] [datetime] NULL, [DeleteFlag] [bit] NULL, CONSTRAINT [PK_UsersGrades] PRIMARY KEY CLUSTERED ( [UserGradeID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_PADDING ON GO /****** Object: Index [IX_Users] Script Date: 12/1/2020 9:32:41 PM ******/ IF NOT EXISTS (SELECT * FROM sys.indexes WHERE object_id = OBJECT_ID(N'[dbo].[Users]') AND name = N'IX_Users') CREATE NONCLUSTERED INDEX [IX_Users] ON [dbo].[Users] ( [LastName] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Classes_TimeStamp]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Classes] ADD CONSTRAINT [DF_Classes_TimeStamp] DEFAULT (getdate()) FOR [TimeStamp] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Classes_DeleteFlag]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Classes] ADD CONSTRAINT [DF_Classes_DeleteFlag] DEFAULT ((0)) FOR [DeleteFlag] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Locations_TimeStamp]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Locations] ADD CONSTRAINT [DF_Locations_TimeStamp] DEFAULT (getdate()) FOR [TimeStamp] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Locations_DeleteFlag]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Locations] ADD CONSTRAINT [DF_Locations_DeleteFlag] DEFAULT ((0)) FOR [DeleteFlag] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Users_TimeStamp]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Users] ADD CONSTRAINT [DF_Users_TimeStamp] DEFAULT (getdate()) FOR [TimeStamp] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Users_DeleteFlag]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Users] ADD CONSTRAINT [DF_Users_DeleteFlag] DEFAULT ((0)) FOR [DeleteFlag] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_Users_IsTeacher]') AND type = 'D') BEGIN ALTER TABLE [dbo].[Users] ADD CONSTRAINT [DF_Users_IsTeacher] DEFAULT ((0)) FOR [IsTeacher] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_UsersAttendance_TimeStamp]') AND type = 'D') BEGIN ALTER TABLE [dbo].[UsersAttendance] ADD CONSTRAINT [DF_UsersAttendance_TimeStamp] DEFAULT (getdate()) FOR [TimeStamp] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_UsersAttendance_DeleteFlag]') AND type = 'D') BEGIN ALTER TABLE [dbo].[UsersAttendance] ADD CONSTRAINT [DF_UsersAttendance_DeleteFlag] DEFAULT ((0)) FOR [DeleteFlag] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_UsersGrades_TimeStamp]') AND type = 'D') BEGIN ALTER TABLE [dbo].[UsersGrades] ADD CONSTRAINT [DF_UsersGrades_TimeStamp] DEFAULT (getdate()) FOR [TimeStamp] END GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DF_UsersGrades_DeleteFlag]') AND type = 'D') BEGIN ALTER TABLE [dbo].[UsersGrades] ADD CONSTRAINT [DF_UsersGrades_DeleteFlag] DEFAULT ((0)) FOR [DeleteFlag] END GO ALTER DATABASE [students] SET READ_WRITE GO