Skip to content

Instantly share code, notes, and snippets.

@ysantonyance
Created December 25, 2025 19:37
Show Gist options
  • Select an option

  • Save ysantonyance/e7ce6415a5b9e8dc8ccd06e9012879ea to your computer and use it in GitHub Desktop.

Select an option

Save ysantonyance/e7ce6415a5b9e8dc8ccd06e9012879ea to your computer and use it in GitHub Desktop.
multi-table DB
USE [master]
GO
/****** Object: Database [Store] Script Date: 25/12/2025 9:36:11 PM ******/
CREATE DATABASE [Store]
CONTAINMENT = NONE
ON PRIMARY
( NAME = N'Store', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\DATA\Store.mdf' , SIZE = 73728KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )
LOG ON
( NAME = N'Store_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\DATA\Store_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )
WITH CATALOG_COLLATION = DATABASE_DEFAULT, LEDGER = OFF
GO
ALTER DATABASE [Store] SET COMPATIBILITY_LEVEL = 170
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [Store].[dbo].[sp_fulltext_database] @action = 'enable'
end
GO
ALTER DATABASE [Store] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [Store] SET ANSI_NULLS OFF
GO
ALTER DATABASE [Store] SET ANSI_PADDING OFF
GO
ALTER DATABASE [Store] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [Store] SET ARITHABORT OFF
GO
ALTER DATABASE [Store] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [Store] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [Store] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [Store] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [Store] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [Store] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [Store] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [Store] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [Store] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [Store] SET DISABLE_BROKER
GO
ALTER DATABASE [Store] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [Store] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [Store] SET TRUSTWORTHY OFF
GO
ALTER DATABASE [Store] SET ALLOW_SNAPSHOT_ISOLATION OFF
GO
ALTER DATABASE [Store] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [Store] SET READ_COMMITTED_SNAPSHOT OFF
GO
ALTER DATABASE [Store] SET HONOR_BROKER_PRIORITY OFF
GO
ALTER DATABASE [Store] SET RECOVERY FULL
GO
ALTER DATABASE [Store] SET MULTI_USER
GO
ALTER DATABASE [Store] SET PAGE_VERIFY CHECKSUM
GO
ALTER DATABASE [Store] SET DB_CHAINING OFF
GO
ALTER DATABASE [Store] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )
GO
ALTER DATABASE [Store] SET TARGET_RECOVERY_TIME = 60 SECONDS
GO
ALTER DATABASE [Store] SET DELAYED_DURABILITY = DISABLED
GO
ALTER DATABASE [Store] SET ACCELERATED_DATABASE_RECOVERY = OFF
GO
ALTER DATABASE [Store] SET OPTIMIZED_LOCKING = OFF
GO
EXEC sys.sp_db_vardecimal_storage_format N'Store', N'ON'
GO
ALTER DATABASE [Store] SET QUERY_STORE = ON
GO
ALTER DATABASE [Store] SET QUERY_STORE (OPERATION_MODE = READ_WRITE, CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30), DATA_FLUSH_INTERVAL_SECONDS = 900, INTERVAL_LENGTH_MINUTES = 60, MAX_STORAGE_SIZE_MB = 1000, QUERY_CAPTURE_MODE = AUTO, SIZE_BASED_CLEANUP_MODE = AUTO, MAX_PLANS_PER_QUERY = 200, WAIT_STATS_CAPTURE_MODE = ON)
GO
USE [Store]
GO
/****** Object: Table [dbo].[Address] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Address](
[id] [int] IDENTITY(1,1) NOT NULL,
[street] [nvarchar](50) NOT NULL,
[id_city] [int] NOT NULL,
CONSTRAINT [PK_Address] 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].[Category] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Category](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_Category] 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].[City] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[City](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[id_region] [int] NOT NULL,
CONSTRAINT [PK_City] 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].[Country] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Country](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_Country] 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].[Delivery] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Delivery](
[id] [int] IDENTITY(1,1) NOT NULL,
[id_product] [int] NOT NULL,
[id_supplier] [int] NOT NULL,
[price] [real] NULL,
[quantity] [int] NULL,
[date_of_delivery] [date] NULL,
CONSTRAINT [PK_Deivery] 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].[Markup] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Markup](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[percent] [int] NOT NULL,
CONSTRAINT [PK_Markup] 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].[Measurement] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Measurement](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](25) NOT NULL,
[description] [nvarchar](50) NULL,
CONSTRAINT [PK_Measurement] 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].[Producer] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Producer](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[id_address] [int] NOT NULL,
CONSTRAINT [PK_Producer] 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: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Product](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[id_category] [int] NOT NULL,
[price] [real] NOT NULL,
[quantity] [int] NOT NULL,
[id_producer] [int] NOT NULL,
[id_measurement] [int] NOT NULL,
[id_markup] [int] NOT 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]
GO
/****** Object: Table [dbo].[Region] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Region](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[id_country] [int] NOT NULL,
CONSTRAINT [PK_Region] 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].[Sale] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Sale](
[id] [int] IDENTITY(1,1) NOT NULL,
[id_product] [int] NOT NULL,
[price] [real] NULL,
[quantity] [int] NULL,
[date_of_sale] [date] NULL,
CONSTRAINT [PK_Sale] 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].[Supplier] Script Date: 25/12/2025 9:36:11 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Supplier](
[id] [int] IDENTITY(1,1) NOT NULL,
[name] [nvarchar](50) NOT NULL,
[id_address] [int] NOT NULL,
CONSTRAINT [PK_Supplier] 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
SET IDENTITY_INSERT [dbo].[Address] ON
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (1, N'123 Sunset Blvd', 1)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (2, N'456 Market St', 2)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (3, N'789 Main Street', 4)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (4, N'101 Oak Avenue', 5)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (5, N'15 Oxford Street', 6)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (6, N'22 King''s Road', 7)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (7, N'5 Marienplatz', 8)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (8, N'77 Champs-Elysees', 9)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (9, N'1 Shibuya Crossing', 10)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (10, N'100 Queen Street', 11)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (12, N'25 George Street', 12)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (13, N'33 Myengdong-gil', 13)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (14, N'88 Zhongshan Road', 14)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (15, N'12 Via della Spiga', 15)
INSERT [dbo].[Address] ([id], [street], [id_city]) VALUES (17, N'55 Passeig de Gracia', 16)
SET IDENTITY_INSERT [dbo].[Address] OFF
GO
SET IDENTITY_INSERT [dbo].[Category] ON
INSERT [dbo].[Category] ([id], [name]) VALUES (1, N'Electronics')
INSERT [dbo].[Category] ([id], [name]) VALUES (2, N'Clothing')
INSERT [dbo].[Category] ([id], [name]) VALUES (3, N'Home & Kitchen')
INSERT [dbo].[Category] ([id], [name]) VALUES (4, N'Books')
INSERT [dbo].[Category] ([id], [name]) VALUES (5, N'Sports')
INSERT [dbo].[Category] ([id], [name]) VALUES (6, N'Beauty')
INSERT [dbo].[Category] ([id], [name]) VALUES (7, N'Toys & Games')
INSERT [dbo].[Category] ([id], [name]) VALUES (8, N'Automotive')
INSERT [dbo].[Category] ([id], [name]) VALUES (9, N'Food & Drinks')
INSERT [dbo].[Category] ([id], [name]) VALUES (10, N'Office Supplies')
INSERT [dbo].[Category] ([id], [name]) VALUES (11, N'Health')
INSERT [dbo].[Category] ([id], [name]) VALUES (12, N'Jewelry')
INSERT [dbo].[Category] ([id], [name]) VALUES (13, N'Garden')
INSERT [dbo].[Category] ([id], [name]) VALUES (14, N'Pet Supplies')
INSERT [dbo].[Category] ([id], [name]) VALUES (15, N'Music & Movies')
SET IDENTITY_INSERT [dbo].[Category] OFF
GO
SET IDENTITY_INSERT [dbo].[City] ON
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (1, N'Los Angeles', 1)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (2, N'San Francisco', 1)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (4, N'Houston', 3)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (5, N'Dallas ', 3)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (6, N'London', 4)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (7, N'Manchester', 4)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (8, N'Munich', 5)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (9, N'Paris', 6)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (10, N'Tokyo', 7)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (11, N'Toronto', 8)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (12, N'Syndey', 9)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (13, N'Seoul', 10)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (14, N'Guangzhou', 11)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (15, N'Milan', 12)
INSERT [dbo].[City] ([id], [name], [id_region]) VALUES (16, N'Barcelona', 13)
SET IDENTITY_INSERT [dbo].[City] OFF
GO
SET IDENTITY_INSERT [dbo].[Country] ON
INSERT [dbo].[Country] ([id], [name]) VALUES (1, N'USA')
INSERT [dbo].[Country] ([id], [name]) VALUES (2, N'UK')
INSERT [dbo].[Country] ([id], [name]) VALUES (3, N'Germany')
INSERT [dbo].[Country] ([id], [name]) VALUES (4, N'France')
INSERT [dbo].[Country] ([id], [name]) VALUES (5, N'Japan')
INSERT [dbo].[Country] ([id], [name]) VALUES (6, N'Canada')
INSERT [dbo].[Country] ([id], [name]) VALUES (7, N'Australia')
INSERT [dbo].[Country] ([id], [name]) VALUES (8, N'South Korea')
INSERT [dbo].[Country] ([id], [name]) VALUES (9, N'China')
INSERT [dbo].[Country] ([id], [name]) VALUES (10, N'Italy')
INSERT [dbo].[Country] ([id], [name]) VALUES (11, N'Spain')
INSERT [dbo].[Country] ([id], [name]) VALUES (12, N'Brazil')
INSERT [dbo].[Country] ([id], [name]) VALUES (13, N'India')
INSERT [dbo].[Country] ([id], [name]) VALUES (14, N'Mexico')
INSERT [dbo].[Country] ([id], [name]) VALUES (15, N'Netherlands')
SET IDENTITY_INSERT [dbo].[Country] OFF
GO
SET IDENTITY_INSERT [dbo].[Delivery] ON
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (1, 3, 1, 850, 30, CAST(N'2025-12-01' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (2, 4, 2, 18, 150, CAST(N'2025-12-02' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (3, 5, 3, 35, 60, CAST(N'2025-12-03' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (4, 6, 4, 14, 100, CAST(N'2025-12-04' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (5, 7, 5, 22, 40, CAST(N'2025-12-05' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (6, 8, 6, 28, 80, CAST(N'2025-12-06' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (7, 9, 7, 90, 25, CAST(N'2025-12-07' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (8, 10, 8, 40, 70, CAST(N'2025-12-08' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (9, 11, 12, 12, 200, CAST(N'2025-12-09' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (10, 12, 13, 17, 120, CAST(N'2025-12-10' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (11, 13, 14, 10, 180, CAST(N'2025-12-11' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (12, 14, 15, 85, 25, CAST(N'2025-12-12' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (13, 15, 16, 30, 50, CAST(N'2025-12-13' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (14, 16, 17, 8, 300, CAST(N'2025-12-14' AS Date))
INSERT [dbo].[Delivery] ([id], [id_product], [id_supplier], [price], [quantity], [date_of_delivery]) VALUES (15, 17, 18, 65, 80, CAST(N'2025-12-15' AS Date))
SET IDENTITY_INSERT [dbo].[Delivery] OFF
GO
SET IDENTITY_INSERT [dbo].[Markup] ON
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (1, N'Standard Retail', 30)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (2, N'Wholesale', 15)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (3, N'Premium', 50)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (4, N'Clearance', 5)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (5, N'Black Friday', 40)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (6, N'Member Discount', 10)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (7, N'Bulk Purchase', 12)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (8, N'Seasonal', 25)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (9, N'New Product Launch', 35)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (10, N'Online Exclusive', 20)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (11, N'Contractor', 8)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (12, N'VIP Customer', 22)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (13, N'Last Chance', 3)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (14, N'Bundle Offer', 18)
INSERT [dbo].[Markup] ([id], [name], [percent]) VALUES (15, N'Loyalty Program', 7)
SET IDENTITY_INSERT [dbo].[Markup] OFF
GO
SET IDENTITY_INSERT [dbo].[Measurement] ON
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (1, N'Piece', N'Single item')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (2, N'Kilogram', N'1000 grams')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (3, N'Gram', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (4, N'Liter', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (5, N'Mililiter', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (6, N'Meter', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (7, N'Centimeter', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (8, N'Pack', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (9, N'Bottle', N'liquid in a bottle')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (10, N'Box', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (11, N'Pair', N'Two Items sold together')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (12, N'Set', N'Collection of items')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (13, N'Dozen', N'12 pieces')
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (14, N'Can', NULL)
INSERT [dbo].[Measurement] ([id], [name], [description]) VALUES (15, N'Roll', NULL)
SET IDENTITY_INSERT [dbo].[Measurement] OFF
GO
SET IDENTITY_INSERT [dbo].[Producer] ON
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (1, N'TechGiant Inc.', 1)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (2, N'Golden Gate Goods', 2)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (3, N'LoneStar Supplies', 3)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (4, N'TexTech Industries', 4)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (5, N'Royal Crafts UK', 5)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (6, N'Manchester Manufactory', 6)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (7, N'Bavarian Quality', 7)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (8, N'Parisian Elegance', 8)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (9, N'Tokyo Innovations', 9)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (10, N'Maple Leaf Goods', 10)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (11, N'Aussie Outdoor', 12)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (12, N'Seoul Style Co.', 13)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (13, N'Pearl River Products', 14)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (14, N'Italian Design Lab', 15)
INSERT [dbo].[Producer] ([id], [name], [id_address]) VALUES (15, N'Catalan Creations', 17)
SET IDENTITY_INSERT [dbo].[Producer] OFF
GO
SET IDENTITY_INSERT [dbo].[Product] ON
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (3, N'Iphone 15 Pro ', 1, 999, 50, 1, 1, 9)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (4, N'Cotton T-Shirt', 2, 25, 200, 5, 1, 1)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (5, N'Non-Stick Frying Pan', 3, 45, 80, 7, 1, 3)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (6, N'The Lord of the Rings', 4, 20, 150, 10, 1, 14)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (7, N'Basketball', 5, 30, 60, 11, 1, 8)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (8, N'Vitamin C Serum', 6, 35, 120, 12, 9, 6)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (9, N'Lego Techinc Set', 7, 120, 40, 14, 12, 5)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (10, N'Car Floor Mats', 8, 55, 90, 4, 8, 11)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (11, N'Organic Coffee Beans', 9, 18, 300, 13, 2, 10)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (12, N'Wireless Mouse', 10, 22, 180, 1, 1, 2)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (13, N'Digital Thermometer', 11, 15, 250, 2, 1, 1)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (14, N'Silver Necklace', 12, 120, 35, 15, 1, 3)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (15, N'Garden Horse', 13, 40, 70, 3, 6, 7)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (16, N'Cat Food (Salmon)', 14, 12, 400, 6, 10, 4)
INSERT [dbo].[Product] ([id], [name], [id_category], [price], [quantity], [id_producer], [id_measurement], [id_markup]) VALUES (17, N'Bluetooth Speaker', 15, 85, 100, 8, 1, 9)
SET IDENTITY_INSERT [dbo].[Product] OFF
GO
SET IDENTITY_INSERT [dbo].[Region] ON
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (1, N'California', 1)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (3, N'Texas', 1)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (4, N'England', 2)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (5, N'Bavaria', 3)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (6, N'lie-de-France', 4)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (7, N'Kanto', 5)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (8, N'Ontario', 6)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (9, N'New South Wales', 7)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (10, N'Seoul Capital Area', 8)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (11, N'Guangdong', 9)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (12, N'Lombardy', 10)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (13, N'Catalonia', 11)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (14, N'Sao Paulo', 12)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (15, N'Maharashta', 13)
INSERT [dbo].[Region] ([id], [name], [id_country]) VALUES (16, N'Jalisco', 14)
SET IDENTITY_INSERT [dbo].[Region] OFF
GO
SET IDENTITY_INSERT [dbo].[Sale] ON
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (2, 3, 899.1, 12, CAST(N'2025-12-20' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (3, 4, 22.5, 45, CAST(N'2025-12-21' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (4, 6, 16, 38, CAST(N'2025-12-21' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (5, 8, 31.5, 28, CAST(N'2025-12-22' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (6, 10, 49.5, 22, CAST(N'2025-12-22' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (7, 12, 19.8, 52, CAST(N'2025-12-23' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (8, 14, 108, 8, CAST(N'2025-12-23' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (9, 15, 32, 18, CAST(N'2025-12-24' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (10, 17, 72.25, 25, CAST(N'2025-12-24' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (11, 5, 40.5, 19, CAST(N'2025-12-25' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (12, 7, 27, 15, CAST(N'2025-12-25' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (13, 9, 96, 9, CAST(N'2025-12-25' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (14, 11, 16.2, 85, CAST(N'2025-12-25' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (15, 13, 13.5, 63, CAST(N'2025-12-25' AS Date))
INSERT [dbo].[Sale] ([id], [id_product], [price], [quantity], [date_of_sale]) VALUES (16, 16, 9.6, 120, CAST(N'2025-12-25' AS Date))
SET IDENTITY_INSERT [dbo].[Sale] OFF
GO
SET IDENTITY_INSERT [dbo].[Supplier] ON
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (1, N'Global Electronics Supply ', 1)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (2, N'Fashion Wholesalers', 2)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (3, N'Home Essentials Co.', 3)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (4, N'Book Distributors Ltd', 5)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (5, N'Sports Gear International', 4)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (6, N'Beauty Source ', 7)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (7, N'ToyMaster', 8)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (8, N'AutoParts Central', 10)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (12, N'Organic FoodsDirect', 12)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (13, N'Office World', 13)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (14, N'Medical Suppliers Pro', 14)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (15, N'Luxury Jewelers', 15)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (16, N'Garden & Home', 17)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (17, N'PetCare Wholesale', 6)
INSERT [dbo].[Supplier] ([id], [name], [id_address]) VALUES (18, N'Audio Visual Solutions', 9)
SET IDENTITY_INSERT [dbo].[Supplier] OFF
GO
/****** Object: Index [IX_Product] Script Date: 25/12/2025 9:36:11 PM ******/
CREATE NONCLUSTERED COLUMNSTORE INDEX [IX_Product] ON [dbo].[Product]
(
[id]
)WITH (DROP_EXISTING = OFF, COMPRESSION_DELAY = 0, DATA_COMPRESSION = COLUMNSTORE) ON [PRIMARY]
GO
ALTER TABLE [dbo].[Address] WITH CHECK ADD CONSTRAINT [FK_Address_City] FOREIGN KEY([id_city])
REFERENCES [dbo].[City] ([id])
GO
ALTER TABLE [dbo].[Address] CHECK CONSTRAINT [FK_Address_City]
GO
ALTER TABLE [dbo].[City] WITH CHECK ADD CONSTRAINT [FK_City_Region] FOREIGN KEY([id_region])
REFERENCES [dbo].[Region] ([id])
GO
ALTER TABLE [dbo].[City] CHECK CONSTRAINT [FK_City_Region]
GO
ALTER TABLE [dbo].[Delivery] WITH CHECK ADD CONSTRAINT [FK_Delivery_Product] FOREIGN KEY([id_product])
REFERENCES [dbo].[Product] ([id])
GO
ALTER TABLE [dbo].[Delivery] CHECK CONSTRAINT [FK_Delivery_Product]
GO
ALTER TABLE [dbo].[Delivery] WITH CHECK ADD CONSTRAINT [FK_Delivery_Supplier] FOREIGN KEY([id_supplier])
REFERENCES [dbo].[Supplier] ([id])
GO
ALTER TABLE [dbo].[Delivery] CHECK CONSTRAINT [FK_Delivery_Supplier]
GO
ALTER TABLE [dbo].[Producer] WITH CHECK ADD CONSTRAINT [FK_Producer_Address] FOREIGN KEY([id_address])
REFERENCES [dbo].[Address] ([id])
GO
ALTER TABLE [dbo].[Producer] CHECK CONSTRAINT [FK_Producer_Address]
GO
ALTER TABLE [dbo].[Product] WITH CHECK ADD CONSTRAINT [FK_Product_Category] FOREIGN KEY([id_category])
REFERENCES [dbo].[Category] ([id])
GO
ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_Category]
GO
ALTER TABLE [dbo].[Product] WITH CHECK ADD CONSTRAINT [FK_Product_Markup] FOREIGN KEY([id_markup])
REFERENCES [dbo].[Markup] ([id])
GO
ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_Markup]
GO
ALTER TABLE [dbo].[Product] WITH CHECK ADD CONSTRAINT [FK_Product_Measurement] FOREIGN KEY([id_measurement])
REFERENCES [dbo].[Measurement] ([id])
GO
ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_Measurement]
GO
ALTER TABLE [dbo].[Product] WITH CHECK ADD CONSTRAINT [FK_Product_Producer] FOREIGN KEY([id_producer])
REFERENCES [dbo].[Producer] ([id])
GO
ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_Producer]
GO
ALTER TABLE [dbo].[Region] WITH CHECK ADD CONSTRAINT [FK_Region_Country] FOREIGN KEY([id_country])
REFERENCES [dbo].[Country] ([id])
GO
ALTER TABLE [dbo].[Region] CHECK CONSTRAINT [FK_Region_Country]
GO
ALTER TABLE [dbo].[Sale] WITH CHECK ADD CONSTRAINT [FK_Sale_Product] FOREIGN KEY([id_product])
REFERENCES [dbo].[Product] ([id])
GO
ALTER TABLE [dbo].[Sale] CHECK CONSTRAINT [FK_Sale_Product]
GO
ALTER TABLE [dbo].[Supplier] WITH CHECK ADD CONSTRAINT [FK_Supplier_Address] FOREIGN KEY([id_address])
REFERENCES [dbo].[Address] ([id])
GO
ALTER TABLE [dbo].[Supplier] CHECK CONSTRAINT [FK_Supplier_Address]
GO
USE [master]
GO
ALTER DATABASE [Store] SET READ_WRITE
GO
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment