Загрузка данных
/* =========================================================
1. POSTAVSHCHIK26
========================================================= */
CREATE TABLE Postavshchik26
(
id INT PRIMARY KEY IDENTITY(1,1),
naimenovanie NVARCHAR(100) NOT NULL,
kontaktnoe_lico NVARCHAR(100),
telefon NVARCHAR(20),
email NVARCHAR(100),
adres NVARCHAR(200)
);
/* =========================================================
2. SOTRUDNIK26
========================================================= */
CREATE TABLE Sotrudnik26
(
id INT PRIMARY KEY IDENTITY(1,1),
fio NVARCHAR(150) NOT NULL,
dolzhnost NVARCHAR(100),
telefon NVARCHAR(20),
email NVARCHAR(100)
);
/* =========================================================
3. KATEGORIYA26
========================================================= */
CREATE TABLE Kategoriya26
(
id INT PRIMARY KEY IDENTITY(1,1),
naimenovanie NVARCHAR(100) NOT NULL,
opisanie NVARCHAR(250)
);
/* =========================================================
4. SKLAD26
========================================================= */
CREATE TABLE Sklad26
(
id INT PRIMARY KEY IDENTITY(1,1),
naimenovanie NVARCHAR(100) NOT NULL,
adres NVARCHAR(200),
opisanie NVARCHAR(250)
);
/* =========================================================
5. TOVAR26
========================================================= */
CREATE TABLE Tovar26
(
id INT PRIMARY KEY IDENTITY(1,1),
naimenovanie NVARCHAR(150) NOT NULL,
artikul NVARCHAR(50),
edinitsa_izmereniya NVARCHAR(30),
tsena DECIMAL(12,2),
kategoriya_id INT NOT NULL,
CONSTRAINT FK_Tovar26_Kategoriya26
FOREIGN KEY (kategoriya_id)
REFERENCES Kategoriya26(id)
);
/* =========================================================
6. POSTAVKA26
========================================================= */
CREATE TABLE Postavka26
(
id INT PRIMARY KEY IDENTITY(1,1),
data_postavki DATE,
status NVARCHAR(50),
postavshchik_id INT NOT NULL,
sotrudnik_id INT NOT NULL,
CONSTRAINT FK_Postavka26_Postavshchik26
FOREIGN KEY (postavshchik_id)
REFERENCES Postavshchik26(id),
CONSTRAINT FK_Postavka26_Sotrudnik26
FOREIGN KEY (sotrudnik_id)
REFERENCES Sotrudnik26(id)
);
/* =========================================================
7. SOSTAV_POSTAVKI26
========================================================= */
CREATE TABLE Sostav_postavki26
(
id INT PRIMARY KEY IDENTITY(1,1),
postavka_id INT NOT NULL,
tovar_id INT NOT NULL,
kolichestvo INT NOT NULL,
zakupochnaya_tsena DECIMAL(12,2),
CONSTRAINT FK_SostavPostavki26_Postavka26
FOREIGN KEY (postavka_id)
REFERENCES Postavka26(id),
CONSTRAINT FK_SostavPostavki26_Tovar26
FOREIGN KEY (tovar_id)
REFERENCES Tovar26(id)
);
/* =========================================================
8. OSTATOK_TOVARA26
========================================================= */
CREATE TABLE Ostatok_tovara26
(
id INT PRIMARY KEY IDENTITY(1,1),
kolichestvo INT NOT NULL,
sklad_id INT NOT NULL,
tovar_id INT NOT NULL,
CONSTRAINT FK_OstatokTovara26_Sklad26
FOREIGN KEY (sklad_id)
REFERENCES Sklad26(id),
CONSTRAINT FK_OstatokTovara26_Tovar26
FOREIGN KEY (tovar_id)
REFERENCES Tovar26(id)
);
/* =========================================================
ДАННЫЕ
========================================================= */
/* POSTAVSHCHIK26 */
INSERT INTO Postavshchik26
(naimenovanie, kontaktnoe_lico, telefon, email, adres)
VALUES
(N'ООО ТехноСнаб', N'Иванов Сергей Петрович',
N'+7 910 111-22-33', N'ivanov@tehnosnab.ru',
N'г. Ярославль, ул. Свободы, д. 15'),
(N'ООО СтройКомплект', N'Петров Алексей Викторович',
N'+7 920 222-33-44', N'petrov@stroykomplekt.ru',
N'г. Ярославль, Московский проспект, д. 42'),
(N'ООО ЭлектроМаркет', N'Сидоров Павел Олегович',
N'+7 930 333-44-55', N'sidorov@electromarket.ru',
N'г. Ярославль, ул. Победы, д. 10'),
(N'ООО ИнструментПрофи', N'Смирнов Андрей Сергеевич',
N'+7 940 444-55-66', N'smirnov@instrument.ru',
N'г. Рыбинск, ул. Ленина, д. 21'),
(N'ООО МастерСнаб', N'Козлов Михаил Викторович',
N'+7 950 555-66-77', N'kozlov@mastersnab.ru',
N'г. Ярославль, ул. Гагарина, д. 8');
/* SOTRUDNIK26 */
INSERT INTO Sotrudnik26
(fio, dolzhnost, telefon, email)
VALUES
(N'Кузнецов Максим Андреевич',
N'Менеджер по закупкам',
N'+7 910 100-10-10',
N'kuznetsov@firma.ru'),
(N'Волков Сергей Игоревич',
N'Кладовщик',
N'+7 910 200-20-20',
N'volkov@firma.ru'),
(N'Морозов Павел Александрович',
N'Менеджер',
N'+7 910 300-30-30',
N'morozov@firma.ru'),
(N'Фёдоров Артём Олегович',
N'Специалист по снабжению',
N'+7 910 400-40-40',
N'fedorov@firma.ru'),
(N'Соколов Дмитрий Сергеевич',
N'Старший кладовщик',
N'+7 910 500-50-50',
N'sokolov@firma.ru');
/* KATEGORIYA26 */
INSERT INTO Kategoriya26
(naimenovanie, opisanie)
VALUES
(N'Электроинструменты',
N'Электрический инструмент для строительных и ремонтных работ'),
(N'Ручные инструменты',
N'Инструменты для выполнения ручных работ'),
(N'Крепёж',
N'Болты, гайки, саморезы и другие крепёжные элементы'),
(N'Строительные материалы',
N'Материалы для строительства и ремонта'),
(N'Электрика',
N'Кабели, розетки и электрические комплектующие');
/* SKLAD26 */
INSERT INTO Sklad26
(naimenovanie, adres, opisanie)
VALUES
(N'Основной склад',
N'г. Ярославль, ул. Промышленная, д. 10',
N'Основной склад для хранения товаров'),
(N'Склад №2',
N'г. Ярославль, ул. Гагарина, д. 30',
N'Дополнительный склад для хранения продукции'),
(N'Склад инструментов',
N'г. Ярославль, ул. Полушкина Роща, д. 18',
N'Склад для хранения ручных и электрических инструментов'),
(N'Резервный склад',
N'г. Ярославль, Тутаевское шоссе, д. 25',
N'Резервное помещение для хранения товаров'),
(N'Склад материалов',
N'г. Ярославль, ул. Осташинская, д. 7',
N'Склад строительных материалов');
/* TOVAR26 */
INSERT INTO Tovar26
(naimenovanie, artikul, edinitsa_izmereniya, tsena, kategoriya_id)
VALUES
(N'Дрель электрическая', N'DR-001', N'шт.', 7500.00, 1),
(N'Шуруповёрт', N'SH-002', N'шт.', 8900.00, 1),
(N'Молоток', N'ML-003', N'шт.', 950.00, 2),
(N'Набор отвёрток', N'OT-004', N'компл.', 1800.00, 2),
(N'Саморезы', N'SM-005', N'уп.', 450.00, 3),
(N'Цемент', N'CM-006', N'мешок', 520.00, 4),
(N'Кабель электрический', N'KB-007', N'м', 120.00, 5),
(N'Розетка', N'RZ-008', N'шт.', 350.00, 5);
/* POSTAVKA26 */
INSERT INTO Postavka26
(data_postavki, status, postavshchik_id, sotrudnik_id)
VALUES
('2026-09-01', N'Принята', 1, 1),
('2026-09-03', N'Принята', 2, 2),
('2026-09-05', N'В обработке', 3, 3),
('2026-09-08', N'Принята', 4, 4),
('2026-09-10', N'Ожидается', 5, 1),
('2026-09-12', N'Принята', 1, 5);
/* SOSTAV_POSTAVKI26 */
INSERT INTO Sostav_postavki26
(postavka_id, tovar_id, kolichestvo, zakupochnaya_tsena)
VALUES
(1, 1, 10, 6200.00),
(1, 2, 8, 7300.00),
(2, 6, 100, 410.00),
(2, 5, 50, 320.00),
(3, 7, 500, 85.00),
(3, 8, 40, 270.00),
(4, 3, 25, 700.00),
(4, 4, 15, 1400.00),
(5, 5, 70, 330.00),
(6, 1, 5, 6100.00);
/* OSTATOK_TOVARA26 */
INSERT INTO Ostatok_tovara26
(kolichestvo, sklad_id, tovar_id)
VALUES
(15, 1, 1),
(12, 1, 2),
(30, 3, 3),
(18, 3, 4),
(120, 2, 5),
(80, 5, 6),
(700, 2, 7),
(45, 2, 8),
(7, 4, 1),
(20, 4, 3);