USE [master] GO /****** Object: Database [session_01] Script Date: 29.03.2023 10:33:07 ******/ CREATE DATABASE [session_01] CONTAINMENT = NONE ON PRIMARY ( NAME = N'session_01', FILENAME = N'D:\Program Files\Microsoft SQL server\MSSQL15.SQLEXPRESS\MSSQL\DATA\session_01.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB ) LOG ON ( NAME = N'session_01_log', FILENAME = N'D:\Program Files\Microsoft SQL server\MSSQL15.SQLEXPRESS\MSSQL\DATA\session_01_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB ) WITH CATALOG_COLLATION = DATABASE_DEFAULT GO ALTER DATABASE [session_01] SET COMPATIBILITY_LEVEL = 150 GO IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')) begin EXEC [session_01].[dbo].[sp_fulltext_database] @action = 'enable' end GO ALTER DATABASE [session_01] SET ANSI_NULL_DEFAULT OFF GO ALTER DATABASE [session_01] SET ANSI_NULLS OFF GO ALTER DATABASE [session_01] SET ANSI_PADDING OFF GO ALTER DATABASE [session_01] SET ANSI_WARNINGS OFF GO ALTER DATABASE [session_01] SET ARITHABORT OFF GO ALTER DATABASE [session_01] SET AUTO_CLOSE OFF GO ALTER DATABASE [session_01] SET AUTO_SHRINK OFF GO ALTER DATABASE [session_01] SET AUTO_UPDATE_STATISTICS ON GO ALTER DATABASE [session_01] SET CURSOR_CLOSE_ON_COMMIT OFF GO ALTER DATABASE [session_01] SET CURSOR_DEFAULT GLOBAL GO ALTER DATABASE [session_01] SET CONCAT_NULL_YIELDS_NULL OFF GO ALTER DATABASE [session_01] SET NUMERIC_ROUNDABORT OFF GO ALTER DATABASE [session_01] SET QUOTED_IDENTIFIER OFF GO ALTER DATABASE [session_01] SET RECURSIVE_TRIGGERS OFF GO ALTER DATABASE [session_01] SET DISABLE_BROKER GO ALTER DATABASE [session_01] SET AUTO_UPDATE_STATISTICS_ASYNC OFF GO ALTER DATABASE [session_01] SET DATE_CORRELATION_OPTIMIZATION OFF GO ALTER DATABASE [session_01] SET TRUSTWORTHY OFF GO ALTER DATABASE [session_01] SET ALLOW_SNAPSHOT_ISOLATION OFF GO ALTER DATABASE [session_01] SET PARAMETERIZATION SIMPLE GO ALTER DATABASE [session_01] SET READ_COMMITTED_SNAPSHOT OFF GO ALTER DATABASE [session_01] SET HONOR_BROKER_PRIORITY OFF GO ALTER DATABASE [session_01] SET RECOVERY SIMPLE GO ALTER DATABASE [session_01] SET MULTI_USER GO ALTER DATABASE [session_01] SET PAGE_VERIFY CHECKSUM GO ALTER DATABASE [session_01] SET DB_CHAINING OFF GO ALTER DATABASE [session_01] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF ) GO ALTER DATABASE [session_01] SET TARGET_RECOVERY_TIME = 60 SECONDS GO ALTER DATABASE [session_01] SET DELAYED_DURABILITY = DISABLED GO ALTER DATABASE [session_01] SET ACCELERATED_DATABASE_RECOVERY = OFF GO ALTER DATABASE [session_01] SET QUERY_STORE = OFF GO USE [session_01] GO /****** Object: Table [dbo].[AttachedProduct] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[AttachedProduct]( [MainProductID] [int] NOT NULL, [AttachedProductID] [int] NOT NULL, CONSTRAINT [PK_AttachedProduct] PRIMARY KEY CLUSTERED ( [MainProductID] ASC, [AttachedProductID] 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] GO /****** Object: Table [dbo].[Client] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Client]( [ID] [int] IDENTITY(1,1) NOT NULL, [FirstName] [nvarchar](50) NOT NULL, [LastName] [nvarchar](50) NOT NULL, [Patronymic] [nvarchar](50) NULL, [Birthday] [date] NULL, [RegistrationDate] [datetime] NOT NULL, [Email] [nvarchar](255) NULL, [Phone] [nvarchar](20) NOT NULL, [GenderCode] [nchar](1) NOT NULL, [PhotoPath] [nvarchar](1000) NULL, CONSTRAINT [PK_Client] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[ClientService] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ClientService]( [ID] [int] IDENTITY(1,1) NOT NULL, [ClientID] [int] NOT NULL, [ServiceID] [int] NOT NULL, [StartTime] [datetime] NOT NULL, [Comment] [nvarchar](max) NULL, CONSTRAINT [PK_ClientService] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[DocumentByService] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[DocumentByService]( [ID] [int] IDENTITY(1,1) NOT NULL, [ClientServiceID] [int] NOT NULL, [DocumentPath] [nvarchar](1000) NOT NULL, CONSTRAINT [PK_DocumentByService] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[Gender] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Gender]( [Code] [nchar](1) NOT NULL, [Name] [nvarchar](10) NULL, CONSTRAINT [PK_Gender] PRIMARY KEY CLUSTERED ( [Code] 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] GO /****** Object: Table [dbo].[Manufacturer] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Manufacturer]( [ID] [int] IDENTITY(1,1) NOT NULL, [Name] [nvarchar](100) NOT NULL, [StartDate] [date] NULL, CONSTRAINT [PK_Manufacturer] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[Product] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Product]( [ID] [int] IDENTITY(1,1) NOT NULL, [Title] [nvarchar](100) NOT NULL, [Cost] [money] NOT NULL, [Description] [nvarchar](max) NULL, [MainImagePath] [nvarchar](1000) NULL, [IsActive] [bit] NOT NULL, [ManufacturerID] [int] NULL, CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[ProductPhoto] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ProductPhoto]( [ID] [int] IDENTITY(1,1) NOT NULL, [ProductID] [int] NOT NULL, [PhotoPath] [nvarchar](1000) NOT NULL, CONSTRAINT [PK_ProductPhoto] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[ProductSale] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ProductSale]( [ID] [int] IDENTITY(1,1) NOT NULL, [SaleDate] [datetime] NOT NULL, [ProductID] [int] NOT NULL, [Quantity] [int] NOT NULL, [ClientServiceID] [int] NULL, CONSTRAINT [PK_ProductSale] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[Service] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Service]( [ID] [int] IDENTITY(1,1) NOT NULL, [Title] [nvarchar](100) NOT NULL, [Cost] [money] NOT NULL, [DurationInSeconds] [int] NOT NULL, [Description] [nvarchar](max) NULL, [Discount] [float] NULL, [MainImagePath] [nvarchar](1000) NULL, CONSTRAINT [PK_Service] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[ServicePhoto] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[ServicePhoto]( [ID] [int] IDENTITY(1,1) NOT NULL, [ServiceID] [int] NOT NULL, [PhotoPath] [nvarchar](1000) NOT NULL, CONSTRAINT [PK_ServicePhoto] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[Tag] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Tag]( [ID] [int] IDENTITY(1,1) NOT NULL, [Title] [nvarchar](30) NOT NULL, [Color] [nchar](6) NOT NULL, CONSTRAINT [PK_Tag] PRIMARY KEY CLUSTERED ( [ID] 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] GO /****** Object: Table [dbo].[TagOfClient] Script Date: 29.03.2023 10:33:07 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[TagOfClient]( [ClientID] [int] NOT NULL, [TagID] [int] NOT NULL, CONSTRAINT [PK_TagOfClient] PRIMARY KEY CLUSTERED ( [ClientID] ASC, [TagID] 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] GO ALTER TABLE [dbo].[AttachedProduct] WITH CHECK ADD CONSTRAINT [FK_AttachedProduct_Product] FOREIGN KEY([MainProductID]) REFERENCES [dbo].[Product] ([ID]) GO ALTER TABLE [dbo].[AttachedProduct] CHECK CONSTRAINT [FK_AttachedProduct_Product] GO ALTER TABLE [dbo].[AttachedProduct] WITH CHECK ADD CONSTRAINT [FK_AttachedProduct_Product1] FOREIGN KEY([AttachedProductID]) REFERENCES [dbo].[Product] ([ID]) GO ALTER TABLE [dbo].[AttachedProduct] CHECK CONSTRAINT [FK_AttachedProduct_Product1] GO ALTER TABLE [dbo].[Client] WITH CHECK ADD CONSTRAINT [FK_Client_Gender] FOREIGN KEY([GenderCode]) REFERENCES [dbo].[Gender] ([Code]) GO ALTER TABLE [dbo].[Client] CHECK CONSTRAINT [FK_Client_Gender] GO ALTER TABLE [dbo].[ClientService] WITH CHECK ADD CONSTRAINT [FK_ClientService_Client] FOREIGN KEY([ClientID]) REFERENCES [dbo].[Client] ([ID]) GO ALTER TABLE [dbo].[ClientService] CHECK CONSTRAINT [FK_ClientService_Client] GO ALTER TABLE [dbo].[ClientService] WITH CHECK ADD CONSTRAINT [FK_ClientService_Service] FOREIGN KEY([ServiceID]) REFERENCES [dbo].[Service] ([ID]) GO ALTER TABLE [dbo].[ClientService] CHECK CONSTRAINT [FK_ClientService_Service] GO ALTER TABLE [dbo].[DocumentByService] WITH CHECK ADD CONSTRAINT [FK_DocumentByService_ClientService] FOREIGN KEY([ClientServiceID]) REFERENCES [dbo].[ClientService] ([ID]) GO ALTER TABLE [dbo].[DocumentByService] CHECK CONSTRAINT [FK_DocumentByService_ClientService] GO ALTER TABLE [dbo].[Product] WITH CHECK ADD CONSTRAINT [FK_Product_Manufacturer] FOREIGN KEY([ManufacturerID]) REFERENCES [dbo].[Manufacturer] ([ID]) GO ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_Manufacturer] GO ALTER TABLE [dbo].[ProductPhoto] WITH CHECK ADD CONSTRAINT [FK_ProductPhoto_Product] FOREIGN KEY([ProductID]) REFERENCES [dbo].[Product] ([ID]) GO ALTER TABLE [dbo].[ProductPhoto] CHECK CONSTRAINT [FK_ProductPhoto_Product] GO ALTER TABLE [dbo].[ProductSale] WITH CHECK ADD CONSTRAINT [FK_ProductSale_ClientService] FOREIGN KEY([ClientServiceID]) REFERENCES [dbo].[ClientService] ([ID]) GO ALTER TABLE [dbo].[ProductSale] CHECK CONSTRAINT [FK_ProductSale_ClientService] GO ALTER TABLE [dbo].[ProductSale] WITH CHECK ADD CONSTRAINT [FK_ProductSale_Product] FOREIGN KEY([ProductID]) REFERENCES [dbo].[Product] ([ID]) GO ALTER TABLE [dbo].[ProductSale] CHECK CONSTRAINT [FK_ProductSale_Product] GO ALTER TABLE [dbo].[ServicePhoto] WITH CHECK ADD CONSTRAINT [FK_ServicePhoto_Service] FOREIGN KEY([ServiceID]) REFERENCES [dbo].[Service] ([ID]) GO ALTER TABLE [dbo].[ServicePhoto] CHECK CONSTRAINT [FK_ServicePhoto_Service] GO ALTER TABLE [dbo].[TagOfClient] WITH CHECK ADD CONSTRAINT [FK_TagOfClient_Client] FOREIGN KEY([ClientID]) REFERENCES [dbo].[Client] ([ID]) GO ALTER TABLE [dbo].[TagOfClient] CHECK CONSTRAINT [FK_TagOfClient_Client] GO ALTER TABLE [dbo].[TagOfClient] WITH CHECK ADD CONSTRAINT [FK_TagOfClient_Tag] FOREIGN KEY([TagID]) REFERENCES [dbo].[Tag] ([ID]) GO ALTER TABLE [dbo].[TagOfClient] CHECK CONSTRAINT [FK_TagOfClient_Tag] GO USE [master] GO ALTER DATABASE [session_01] SET READ_WRITE GO