first commit
This commit is contained in:
Executable
+404
@@ -0,0 +1,404 @@
|
||||
-- MySQL dump 10.13 Distrib 9.6.0, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: CarRental
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 9.6.0
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!50503 SET NAMES utf8mb4 */;
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;
|
||||
SET @@SESSION.SQL_LOG_BIN= 0;
|
||||
|
||||
--
|
||||
-- GTID state at the beginning of the backup
|
||||
--
|
||||
|
||||
SET @@GLOBAL.GTID_PURGED=/*!80000 '+'*/ '8e6de61c-253f-11f1-be75-0242ac130002:1-141';
|
||||
|
||||
--
|
||||
-- Table structure for table `Car_Classes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Car_Classes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Car_Classes` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Class` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Car_Classes`
|
||||
--
|
||||
|
||||
LOCK TABLES `Car_Classes` WRITE;
|
||||
/*!40000 ALTER TABLE `Car_Classes` DISABLE KEYS */;
|
||||
INSERT INTO `Car_Classes` VALUES (1,'Luxury'),(2,'Midsize'),(3,'Compact'),(4,'Compact'),(5,'SUV');
|
||||
/*!40000 ALTER TABLE `Car_Classes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Car_Infos`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Car_Infos`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Car_Infos` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Fuel` int DEFAULT NULL,
|
||||
`Mileage` int DEFAULT NULL,
|
||||
`Class` int DEFAULT NULL,
|
||||
`Model` int DEFAULT NULL,
|
||||
`Manufacturer` int DEFAULT NULL,
|
||||
`Year` int DEFAULT NULL,
|
||||
`VIN_code` varchar(255) DEFAULT NULL,
|
||||
`Number` varchar(255) DEFAULT NULL,
|
||||
`CoS` int DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `VIN_code` (`VIN_code`),
|
||||
KEY `Fuel` (`Fuel`),
|
||||
KEY `Class` (`Class`),
|
||||
KEY `Model` (`Model`),
|
||||
KEY `Manufacturer` (`Manufacturer`),
|
||||
CONSTRAINT `Car_Infos_ibfk_1` FOREIGN KEY (`Fuel`) REFERENCES `FuelTypes` (`id`),
|
||||
CONSTRAINT `Car_Infos_ibfk_2` FOREIGN KEY (`Class`) REFERENCES `Car_Classes` (`id`),
|
||||
CONSTRAINT `Car_Infos_ibfk_3` FOREIGN KEY (`Model`) REFERENCES `Models` (`id`),
|
||||
CONSTRAINT `Car_Infos_ibfk_4` FOREIGN KEY (`Manufacturer`) REFERENCES `Manufacturers` (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Car_Infos`
|
||||
--
|
||||
|
||||
LOCK TABLES `Car_Infos` WRITE;
|
||||
/*!40000 ALTER TABLE `Car_Infos` DISABLE KEYS */;
|
||||
INSERT INTO `Car_Infos` VALUES (1,1,10000,1,1,1,2022,'ABC123','12345',1),(2,2,20000,2,2,2,2021,'DEF456','67890',2),(3,3,30000,3,3,3,2020,'GHI789','ABCDE',3),(4,4,40000,4,4,4,2019,'JKL012','FGHIJ',4),(5,5,50000,5,5,5,2018,'MNO345','KLMNO',5);
|
||||
/*!40000 ALTER TABLE `Car_Infos` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Cars`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Cars`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Cars` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Owner_Id` int DEFAULT NULL,
|
||||
`Name` varchar(255) DEFAULT NULL,
|
||||
`Price` float DEFAULT NULL,
|
||||
`Rating` int DEFAULT NULL,
|
||||
`Number_Of_leases` int DEFAULT NULL,
|
||||
`Car_info` int DEFAULT NULL,
|
||||
`City` int DEFAULT NULL,
|
||||
`Country` int DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `Rating` (`Rating`),
|
||||
KEY `Car_info` (`Car_info`),
|
||||
KEY `City` (`City`),
|
||||
KEY `Country` (`Country`),
|
||||
CONSTRAINT `Cars_ibfk_1` FOREIGN KEY (`Rating`) REFERENCES `Ratings` (`id`),
|
||||
CONSTRAINT `Cars_ibfk_2` FOREIGN KEY (`Car_info`) REFERENCES `Car_Infos` (`id`),
|
||||
CONSTRAINT `Cars_ibfk_3` FOREIGN KEY (`City`) REFERENCES `Cities` (`id`),
|
||||
CONSTRAINT `Cars_ibfk_4` FOREIGN KEY (`Country`) REFERENCES `Countries` (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Cars`
|
||||
--
|
||||
|
||||
LOCK TABLES `Cars` WRITE;
|
||||
/*!40000 ALTER TABLE `Cars` DISABLE KEYS */;
|
||||
INSERT INTO `Cars` VALUES (1,1,'Mercedes A-Class',100,1,0,1,1,1),(2,2,'Toyota RAV4',150,2,0,2,2,2),(3,3,'BMW 3 Series',200,3,0,3,3,3),(4,4,'Ford Focus',250,4,0,4,4,4),(5,5,'Honda CR-V',300,5,0,5,5,5);
|
||||
/*!40000 ALTER TABLE `Cars` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Cities`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Cities`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Cities` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`City` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Cities`
|
||||
--
|
||||
|
||||
LOCK TABLES `Cities` WRITE;
|
||||
/*!40000 ALTER TABLE `Cities` DISABLE KEYS */;
|
||||
INSERT INTO `Cities` VALUES (1,'New York'),(2,'Tokyo'),(3,'Berlin'),(4,'Detroit'),(5,'Tokyo');
|
||||
/*!40000 ALTER TABLE `Cities` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Countries`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Countries`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Countries` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Country` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Countries`
|
||||
--
|
||||
|
||||
LOCK TABLES `Countries` WRITE;
|
||||
/*!40000 ALTER TABLE `Countries` DISABLE KEYS */;
|
||||
INSERT INTO `Countries` VALUES (1,'USA'),(2,'Japan'),(3,'Germany'),(4,'USA'),(5,'Japan');
|
||||
/*!40000 ALTER TABLE `Countries` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `CustomerRatings`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `CustomerRatings`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `CustomerRatings` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Customer_id` int DEFAULT NULL,
|
||||
`Rating_id` int DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `Customer_id` (`Customer_id`,`Rating_id`),
|
||||
KEY `Rating_id` (`Rating_id`),
|
||||
CONSTRAINT `CustomerRatings_ibfk_1` FOREIGN KEY (`Customer_id`) REFERENCES `Customers` (`id`),
|
||||
CONSTRAINT `CustomerRatings_ibfk_2` FOREIGN KEY (`Rating_id`) REFERENCES `Ratings` (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `CustomerRatings`
|
||||
--
|
||||
|
||||
LOCK TABLES `CustomerRatings` WRITE;
|
||||
/*!40000 ALTER TABLE `CustomerRatings` DISABLE KEYS */;
|
||||
INSERT INTO `CustomerRatings` VALUES (1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5);
|
||||
/*!40000 ALTER TABLE `CustomerRatings` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Customers`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Customers`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Customers` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Passport_id` varchar(255) DEFAULT NULL,
|
||||
`F_Name` varchar(255) DEFAULT NULL,
|
||||
`S_Name` varchar(255) DEFAULT NULL,
|
||||
`Email` varchar(255) DEFAULT NULL,
|
||||
`PhoneNumber` varchar(20) DEFAULT NULL,
|
||||
`City` int DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `Passport_id` (`Passport_id`),
|
||||
UNIQUE KEY `PhoneNumber` (`PhoneNumber`),
|
||||
UNIQUE KEY `PhoneNumber_2` (`PhoneNumber`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Customers`
|
||||
--
|
||||
|
||||
LOCK TABLES `Customers` WRITE;
|
||||
/*!40000 ALTER TABLE `Customers` DISABLE KEYS */;
|
||||
INSERT INTO `Customers` VALUES (1,'ID123','John','Doe','john.doe@email.com','1234567890',1),(2,'ID456','Jane','Smith','jane.smith@email.com','9876543210',2),(3,'ID789','Alice','Johnson','alice.johnson@email.com','5555555555',3),(4,'IDABC','Bob','Williams','bob.williams@email.com','1111111111',4),(5,'IDDEF','Eva','Brown','eva.brown@email.com','9999999999',5);
|
||||
/*!40000 ALTER TABLE `Customers` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `FuelTypes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `FuelTypes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `FuelTypes` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Type` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `FuelTypes`
|
||||
--
|
||||
|
||||
LOCK TABLES `FuelTypes` WRITE;
|
||||
/*!40000 ALTER TABLE `FuelTypes` DISABLE KEYS */;
|
||||
INSERT INTO `FuelTypes` VALUES (1,'Gasoline'),(2,'Gasoline'),(3,'Diesel'),(4,'Gasoline'),(5,'Hybrid');
|
||||
/*!40000 ALTER TABLE `FuelTypes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Manufacturers`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Manufacturers`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Manufacturers` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Manufacturers`
|
||||
--
|
||||
|
||||
LOCK TABLES `Manufacturers` WRITE;
|
||||
/*!40000 ALTER TABLE `Manufacturers` DISABLE KEYS */;
|
||||
INSERT INTO `Manufacturers` VALUES (1,'Mercedes'),(2,'Toyota'),(3,'BMW'),(4,'Ford'),(5,'Honda');
|
||||
/*!40000 ALTER TABLE `Manufacturers` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Models`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Models`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Models` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Model` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Models`
|
||||
--
|
||||
|
||||
LOCK TABLES `Models` WRITE;
|
||||
/*!40000 ALTER TABLE `Models` DISABLE KEYS */;
|
||||
INSERT INTO `Models` VALUES (1,'S-Class'),(2,'Camry'),(3,'3 Series'),(4,'Focus'),(5,'CR-V');
|
||||
/*!40000 ALTER TABLE `Models` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Orders`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Orders`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Orders` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`StartDate` date DEFAULT NULL,
|
||||
`EndDate` date DEFAULT NULL,
|
||||
`Customers` int DEFAULT NULL,
|
||||
`Car` int DEFAULT NULL,
|
||||
`Status` int DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `Customers` (`Customers`),
|
||||
KEY `Car` (`Car`),
|
||||
KEY `Status` (`Status`),
|
||||
CONSTRAINT `Orders_ibfk_1` FOREIGN KEY (`Customers`) REFERENCES `Customers` (`id`),
|
||||
CONSTRAINT `Orders_ibfk_2` FOREIGN KEY (`Car`) REFERENCES `Cars` (`id`),
|
||||
CONSTRAINT `Orders_ibfk_3` FOREIGN KEY (`Status`) REFERENCES `Statuses` (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Orders`
|
||||
--
|
||||
|
||||
LOCK TABLES `Orders` WRITE;
|
||||
/*!40000 ALTER TABLE `Orders` DISABLE KEYS */;
|
||||
INSERT INTO `Orders` VALUES (1,'2023-01-01','2023-01-10',1,1,1),(2,'2023-02-01','2023-02-15',2,2,2),(3,'2023-03-01','2023-03-20',3,3,3),(4,'2023-04-01','2023-04-25',4,4,4),(5,'2023-05-01','2023-05-30',5,5,5);
|
||||
/*!40000 ALTER TABLE `Orders` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Ratings`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Ratings`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Ratings` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Rating` int DEFAULT NULL,
|
||||
`DescriptionRate` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Ratings`
|
||||
--
|
||||
|
||||
LOCK TABLES `Ratings` WRITE;
|
||||
/*!40000 ALTER TABLE `Ratings` DISABLE KEYS */;
|
||||
INSERT INTO `Ratings` VALUES (1,1,'Poor'),(2,2,'Fair'),(3,3,'Average'),(4,4,'Good'),(5,5,'Excellent');
|
||||
/*!40000 ALTER TABLE `Ratings` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Statuses`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Statuses`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Statuses` (
|
||||
`id` int NOT NULL AUTO_INCREMENT,
|
||||
`Type` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Statuses`
|
||||
--
|
||||
|
||||
LOCK TABLES `Statuses` WRITE;
|
||||
/*!40000 ALTER TABLE `Statuses` DISABLE KEYS */;
|
||||
INSERT INTO `Statuses` VALUES (1,'Available'),(2,'Booked'),(3,'Rented'),(4,'In Maintenance'),(5,'Available');
|
||||
/*!40000 ALTER TABLE `Statuses` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;
|
||||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
-- Dump completed on 2026-03-25 14:38:18
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
# Використовуємо стабільну Ubuntu 22.04
|
||||
FROM ubuntu:22.04
|
||||
|
||||
# Вимикаємо інтерактивні запити під час встановлення пакетів
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# 1. Встановлюємо всі необхідні пакети одним шаром
|
||||
# mysql-client - для дампу (сумісний з mysql:latest)
|
||||
# lftp - для SFTP передачі
|
||||
# msmtp - для надсилання пошти
|
||||
# ca-certificates - критично для TLS/SSL (Gmail)
|
||||
# cron - для автоматизації щохвилини
|
||||
# openssh-client - для SSH-ключів
|
||||
RUN apt-get update && apt-get install -y \
|
||||
mysql-client \
|
||||
lftp \
|
||||
msmtp \
|
||||
msmtp-mta \
|
||||
ca-certificates \
|
||||
cron \
|
||||
openssh-client \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 2. Налаштовуємо SSH для роботи з ключами
|
||||
RUN mkdir -p /root/.ssh && chmod 700 /root/.ssh
|
||||
|
||||
# 3. Копіюємо конфігураційні файли
|
||||
# Файл налаштування пошти
|
||||
COPY msmtprc /etc/msmtprc
|
||||
RUN chmod 600 /etc/msmtprc
|
||||
|
||||
# Скрипт бекапу
|
||||
COPY backup.sh /usr/local/bin/backup.sh
|
||||
RUN chmod +x /usr/local/bin/backup.sh
|
||||
|
||||
# 4. Створюємо файли логів з правильними правами доступу
|
||||
RUN touch /var/log/msmtp.log && chmod 666 /var/log/msmtp.log
|
||||
RUN touch /var/log/backup.log && chmod 666 /var/log/backup.log
|
||||
|
||||
# 5. Налаштовуємо Cron (запуск щохвилини)
|
||||
# ВАЖЛИВО: додаємо ". /etc/environment;", щоб Cron бачив паролі з docker-compose
|
||||
RUN echo "* * * * * . /etc/environment; /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1" | crontab -
|
||||
|
||||
# 6. Команда запуску контейнера:
|
||||
# - зберігаємо поточні змінні оточення в /etc/environment (щоб їх бачив Cron)
|
||||
# - запускаємо демон cron у фоновому режимі (флаг -f)
|
||||
CMD ["sh", "-c", "printenv > /etc/environment && cron -f"]
|
||||
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# --- НАЛАШТУВАННЯ ---
|
||||
REMOTE_DIR="/Volumes/Just/sql advanced/lab2-1/backups"
|
||||
|
||||
# Новий формат: рік-місяць-день_години-хвилини-секунди
|
||||
DATE=$(date +%Y-%m-%d_%H-%M-%S)
|
||||
FILENAME="OrdersDB_${DATE}.sql"
|
||||
BACKUP_PATH="/tmp/$FILENAME"
|
||||
|
||||
echo "Starting dump of OrdersDB ($DATE)..."
|
||||
|
||||
# 1. Створення дампу бази даних
|
||||
# Додано --set-gtid-purged=OFF для сумісності з mysql:latest
|
||||
# Додано --single-transaction для уникнення помилок консистентності
|
||||
mysqldump -h db -u root -p$MYSQL_ROOT_PASSWORD \
|
||||
--set-gtid-purged=OFF \
|
||||
--single-transaction \
|
||||
OrdersDB > $BACKUP_PATH
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Dump created: $FILENAME. Uploading to Mac..."
|
||||
|
||||
# 2. Завантаження через SFTP
|
||||
lftp -u $SFTP_USER, sftp://$SFTP_HOST <<EOF
|
||||
set sftp:connect-program "ssh -a -x -i /root/.ssh/id_rsa -o StrictHostKeyChecking=no"
|
||||
cd "$REMOTE_DIR"
|
||||
put "$BACKUP_PATH"
|
||||
quit
|
||||
EOF
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Upload successful. Sending email..."
|
||||
|
||||
# 3. Надсилання сповіщення
|
||||
# Ми додаємо вивід помилок msmtp у змінну, щоб побачити їх, якщо лист не піде
|
||||
EMAIL_LOG=$(echo -e "Subject: Backup Success: OrdersDB ($DATE)\n\nВітаю! Резервна копія $FILENAME успішно збережена на зовнішній диск." | msmtp $EMAIL_TO 2>&1)
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Email sent!"
|
||||
else
|
||||
echo "Email error: $EMAIL_LOG"
|
||||
fi
|
||||
else
|
||||
echo "SFTP Error!"
|
||||
echo -e "Subject: Backup FAILED: SFTP Error ($DATE)\n\nПомилка передачі файлу $FILENAME на диск." | msmtp $EMAIL_TO
|
||||
fi
|
||||
|
||||
# Видаляємо тимчасовий файл
|
||||
rm "$BACKUP_PATH"
|
||||
else
|
||||
echo "MySQL Dump Error!"
|
||||
echo -e "Subject: Backup FAILED: SQL Error ($DATE)\n\nНе вдалося створити дамп бази OrdersDB. Перевірте логі контейнера." | msmtp $EMAIL_TO
|
||||
fi
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
defaults
|
||||
auth on
|
||||
tls on
|
||||
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
||||
logfile /var/log/msmtp.log
|
||||
|
||||
account oa_mail
|
||||
host smtp.gmail.com
|
||||
port 587
|
||||
from vitalii.litvinchuk@oa.edu.ua
|
||||
user vitalii.litvinchuk@oa.edu.ua
|
||||
password krkrvyobreydoenh
|
||||
|
||||
account default : oa_mail
|
||||
@@ -0,0 +1,165 @@
|
||||
## 1. docker-compose.yml
|
||||
Файл конфігурації контейнерів бази даних та сервісу бекапу.
|
||||
|
||||
```yaml
|
||||
services:
|
||||
db:
|
||||
image: mysql:latest
|
||||
container_name: mysql-container-2
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: qwerty-1
|
||||
MYSQL_DATABASE: OrdersDB
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- sqladvanced_mysql_data:/var/lib/mysql
|
||||
|
||||
backup-service:
|
||||
build: ./backup
|
||||
container_name: mysql-backup-runner
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: qwerty-1
|
||||
SFTP_HOST: "192.168.3.142"
|
||||
SFTP_USER: "vitaliilitvinchuk"
|
||||
EMAIL_TO: "vitalii.litvinchuk@oa.edu.ua"
|
||||
volumes:
|
||||
- ~/.ssh/id_rsa_docker:/root/.ssh/id_rsa:ro
|
||||
|
||||
volumes:
|
||||
sqladvanced_mysql_data:
|
||||
external: true
|
||||
```
|
||||
|
||||
## 2. backup/Dockerfile
|
||||
Інструкції для створення образу контейнера бекапу.
|
||||
|
||||
```dockerfile
|
||||
# Використовуємо стабільну Ubuntu 22.04
|
||||
FROM ubuntu:22.04
|
||||
|
||||
# Вимикаємо інтерактивні запити під час встановлення пакетів
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# 1. Встановлюємо всі необхідні пакети одним шаром
|
||||
# mysql-client - для дампу (сумісний з mysql:latest)
|
||||
# lftp - для SFTP передачі
|
||||
# msmtp - для надсилання пошти
|
||||
# ca-certificates - критично для TLS/SSL (Gmail)
|
||||
# cron - для автоматизації щохвилини
|
||||
# openssh-client - для SSH-ключів
|
||||
RUN apt-get update && apt-get install -y \
|
||||
mysql-client \
|
||||
lftp \
|
||||
msmtp \
|
||||
msmtp-mta \
|
||||
ca-certificates \
|
||||
cron \
|
||||
openssh-client \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# 2. Налаштовуємо SSH для роботи з ключами
|
||||
RUN mkdir -p /root/.ssh && chmod 700 /root/.ssh
|
||||
|
||||
# 3. Копіюємо конфігураційні файли
|
||||
# Файл налаштування пошти
|
||||
COPY msmtprc /etc/msmtprc
|
||||
RUN chmod 600 /etc/msmtprc
|
||||
|
||||
# Скрипт бекапу
|
||||
COPY backup.sh /usr/local/bin/backup.sh
|
||||
RUN chmod +x /usr/local/bin/backup.sh
|
||||
|
||||
# 4. Створюємо файли логів з правильними правами доступу
|
||||
RUN touch /var/log/msmtp.log && chmod 666 /var/log/msmtp.log
|
||||
RUN touch /var/log/backup.log && chmod 666 /var/log/backup.log
|
||||
|
||||
# 5. Налаштовуємо Cron (запуск щохвилини)
|
||||
# ВАЖЛИВО: додаємо ". /etc/environment;", щоб Cron бачив паролі з docker-compose
|
||||
RUN echo "* * * * * . /etc/environment; /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1" | crontab -
|
||||
|
||||
# 6. Команда запуску контейнера:
|
||||
# - зберігаємо поточні змінні оточення в /etc/environment (щоб їх бачив Cron)
|
||||
# - запускаємо демон cron у фоновому режимі (флаг -f)
|
||||
CMD ["sh", "-c", "printenv > /etc/environment && cron -f"]
|
||||
```
|
||||
|
||||
## 3. backup/backup.sh
|
||||
Скрипт, який виконує створення дампу, завантаження на диск та надсилання пошти.
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
# --- НАЛАШТУВАННЯ ---
|
||||
REMOTE_DIR="/Volumes/Just/sql advanced/lab2-1/backups"
|
||||
|
||||
# Новий формат: рік-місяць-день_години-хвилини-секунди
|
||||
DATE=$(date +%Y-%m-%d_%H-%M-%S)
|
||||
FILENAME="OrdersDB_${DATE}.sql"
|
||||
BACKUP_PATH="/tmp/$FILENAME"
|
||||
|
||||
echo "Starting dump of OrdersDB ($DATE)..."
|
||||
|
||||
# 1. Створення дампу бази даних
|
||||
# Додано --set-gtid-purged=OFF для сумісності з mysql:latest
|
||||
# Додано --single-transaction для уникнення помилок консистентності
|
||||
mysqldump -h db -u root -p$MYSQL_ROOT_PASSWORD \
|
||||
--set-gtid-purged=OFF \
|
||||
--single-transaction \
|
||||
OrdersDB > $BACKUP_PATH
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Dump created: $FILENAME. Uploading to Mac..."
|
||||
|
||||
# 2. Завантаження через SFTP
|
||||
lftp -u $SFTP_USER, sftp://$SFTP_HOST <<EOF
|
||||
set sftp:connect-program "ssh -a -x -i /root/.ssh/id_rsa -o StrictHostKeyChecking=no"
|
||||
cd "$REMOTE_DIR"
|
||||
put "$BACKUP_PATH"
|
||||
quit
|
||||
EOF
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Upload successful. Sending email..."
|
||||
|
||||
# 3. Надсилання сповіщення
|
||||
# Ми додаємо вивід помилок msmtp у змінну, щоб побачити їх, якщо лист не піде
|
||||
EMAIL_LOG=$(echo -e "Subject: Backup Success: OrdersDB ($DATE)\n\nВітаю! Резервна копія $FILENAME успішно збережена на зовнішній диск." | msmtp $EMAIL_TO 2>&1)
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Email sent!"
|
||||
else
|
||||
echo "Email error: $EMAIL_LOG"
|
||||
fi
|
||||
else
|
||||
echo "SFTP Error!"
|
||||
echo -e "Subject: Backup FAILED: SFTP Error ($DATE)\n\nПомилка передачі файлу $FILENAME на диск." | msmtp $EMAIL_TO
|
||||
fi
|
||||
|
||||
# Видаляємо тимчасовий файл
|
||||
rm "$BACKUP_PATH"
|
||||
else
|
||||
echo "MySQL Dump Error!"
|
||||
echo -e "Subject: Backup FAILED: SQL Error ($DATE)\n\nНе вдалося створити дамп бази OrdersDB. Перевірте логі контейнера." | msmtp $EMAIL_TO
|
||||
fi
|
||||
```
|
||||
|
||||
## 4. backup/msmtprc
|
||||
Налаштування SMTP сервера для надсилання пошти.
|
||||
|
||||
```text
|
||||
defaults
|
||||
auth on
|
||||
tls on
|
||||
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
||||
logfile /var/log/msmtp.log
|
||||
|
||||
account oa_mail
|
||||
host smtp.gmail.com
|
||||
port 587
|
||||
from vitalii.litvinchuk@oa.edu.ua
|
||||
user vitalii.litvinchuk@oa.edu.ua
|
||||
password krkrvyobreydoenh
|
||||
|
||||
account default : oa_mail
|
||||
```
|
||||
Executable
+687
@@ -0,0 +1,687 @@
|
||||
USE PortDB;
|
||||
|
||||
INSERT INTO
|
||||
Purposes (Name, Description)
|
||||
VALUES (
|
||||
'Перевезення сировини',
|
||||
'Перевезення різноманітних сировинних матеріалів на виробництво.'
|
||||
),
|
||||
(
|
||||
'Експорт товарів',
|
||||
'Вивезення готової продукції за кордон для продажу.'
|
||||
),
|
||||
(
|
||||
'Імпорт сировини',
|
||||
'Закупівля різноманітних сировинних матеріалів з-за кордону.'
|
||||
),
|
||||
(
|
||||
'Транспортування контейнерів',
|
||||
'Перевезення контейнерів із товаром між портами.'
|
||||
),
|
||||
(
|
||||
'Доставка харчових продуктів',
|
||||
'Перевезення продуктів харчування великими суднами.'
|
||||
),
|
||||
(
|
||||
'Енергетичні цілі',
|
||||
'Транспортування палива та енергетичних ресурсів морем.'
|
||||
),
|
||||
(
|
||||
'Будівельні матеріали',
|
||||
'Перевезення будівельних матеріалів для проектів на узбережжі.'
|
||||
),
|
||||
(
|
||||
'Масова перевезення',
|
||||
'Транспортування великих обсягів товарів для оптових партнерів.'
|
||||
),
|
||||
(
|
||||
'Транзитне сполучення',
|
||||
'Проходження через території кількох країн у маршруті доставки.'
|
||||
);
|
||||
|
||||
INSERT INTO
|
||||
CargoTypes (Name)
|
||||
VALUES ('Контейнери'),
|
||||
('Рідини'),
|
||||
('Сипучі матеріали'),
|
||||
('Сталеві вироби'),
|
||||
('Деревинні матеріали'),
|
||||
('Харчові продукти'),
|
||||
('Технічне обладнання'),
|
||||
('Автомобілі'),
|
||||
('Товари загального вжитку'),
|
||||
('Спеціальні вантажі');
|
||||
|
||||
INSERT INTO
|
||||
ShipTypes (Name)
|
||||
VALUES ('Балкер'),
|
||||
('Контейнеровоз'),
|
||||
('Танкер'),
|
||||
('Ро-Ро (Roll-on/Roll-off)'),
|
||||
('Бункеровоз'),
|
||||
('Круїзний лайнер'),
|
||||
('Багатоцільовий корабель'),
|
||||
('Трал'),
|
||||
('Лінійний корабель'),
|
||||
(
|
||||
'Вантажівка-перевізник (Ferry)'
|
||||
),
|
||||
('Пасажирський корабель');
|
||||
|
||||
INSERT INTO
|
||||
Country (Name)
|
||||
VALUES ('Австралія'),
|
||||
('Австрія'),
|
||||
('Азербайджан'),
|
||||
('Албанія'),
|
||||
('Алжир'),
|
||||
('Ангола'),
|
||||
('Андорра'),
|
||||
('Аргентина'),
|
||||
('Арменія'),
|
||||
('Афганістан'),
|
||||
('Багамські Острови'),
|
||||
('Бангладеш'),
|
||||
('Барбадос'),
|
||||
('Бахрейн'),
|
||||
('Беліз'),
|
||||
('Бельгія'),
|
||||
('Бенін'),
|
||||
('Білорусь'),
|
||||
('Болгарія'),
|
||||
('Болівія'),
|
||||
('Боснія і Герцеговина'),
|
||||
('Ботсвана'),
|
||||
('Бразилія'),
|
||||
('Бруней'),
|
||||
('Буркіна-Фасо'),
|
||||
('Бурунді'),
|
||||
('Бутан'),
|
||||
('В\'єтнам'),
|
||||
('Габон'),
|
||||
('Гаїті'),
|
||||
('Гайана'),
|
||||
('Гамбія'),
|
||||
('Гана'),
|
||||
('Гваделупа'),
|
||||
('Гватемала'),
|
||||
('Гвінея'),
|
||||
('Гвінея - Бісау'),
|
||||
('Гондурас'),
|
||||
('Гренада'),
|
||||
('Греція'),
|
||||
('Грузія'),
|
||||
('Гренландія'),
|
||||
('Данія'),
|
||||
(
|
||||
'Демократична Республіка Конго'
|
||||
),
|
||||
('Джибуті'),
|
||||
('Домініка'),
|
||||
('Домініканська Республіка'),
|
||||
('Еквадор'),
|
||||
('Екваторіальна Гвінея'),
|
||||
('Еритрея'),
|
||||
('Есватіні'),
|
||||
('Естонія'),
|
||||
('Ефіопія'),
|
||||
('Єгипет'),
|
||||
('Ємен'),
|
||||
('Замбія'),
|
||||
('Західна Сахара'),
|
||||
('Зімбабве'),
|
||||
('Ізраїль'),
|
||||
('Індія'),
|
||||
('Індонезія'),
|
||||
('Ірак'),
|
||||
('Іран'),
|
||||
('Ірландія'),
|
||||
('Ісландія'),
|
||||
('Іспанія'),
|
||||
('Італія'),
|
||||
('Йорданія'),
|
||||
('Казахстан'),
|
||||
('Кайманові Острови'),
|
||||
('Камбоджа'),
|
||||
('Камерун'),
|
||||
('Канада'),
|
||||
('Катар'),
|
||||
('Кенія'),
|
||||
('Киргизстан'),
|
||||
('Кіпр'),
|
||||
('Кірібаті'),
|
||||
('Китай'),
|
||||
('Колумбія'),
|
||||
('Коморські Острови'),
|
||||
('Конго'),
|
||||
('Північна Корея'),
|
||||
('Південна Корея'),
|
||||
('Косово'),
|
||||
('Коста - Рика'),
|
||||
('Куба'),
|
||||
('Кувейт'),
|
||||
('Лаос'),
|
||||
('Латвія'),
|
||||
('Лесото'),
|
||||
('Литва'),
|
||||
('Ліберія'),
|
||||
('Ліван'),
|
||||
('Лівія'),
|
||||
('Ліхтенштейн'),
|
||||
('Люксембург'),
|
||||
('Маврикій'),
|
||||
('Мавританія'),
|
||||
('Мадагаскар'),
|
||||
('Македонія'),
|
||||
('Малаві'),
|
||||
('Малайзія'),
|
||||
('Малі'),
|
||||
('Мальдіви'),
|
||||
('Мальта'),
|
||||
('Марокко'),
|
||||
('Мартиніка'),
|
||||
('Маршаллові Острови'),
|
||||
('Мексика'),
|
||||
('Мозамбік'),
|
||||
('Молдова'),
|
||||
('Монако'),
|
||||
('Монголія'),
|
||||
('М\'янма (Бірма)'),
|
||||
('Намібія'),
|
||||
('Науру'),
|
||||
('Непал'),
|
||||
('Нігер'),
|
||||
('Нігерія'),
|
||||
('Нідерланди'),
|
||||
('Нікарагуа'),
|
||||
('Німеччина'),
|
||||
('Нова Зеландія'),
|
||||
('Норвегія'),
|
||||
('ОАЕ'),
|
||||
('Оман'),
|
||||
('Пакистан'),
|
||||
('Палау'),
|
||||
('Палестина'),
|
||||
('Панама');
|
||||
|
||||
INSERT INTO
|
||||
Positions (Name)
|
||||
VALUES ('Директор'),
|
||||
('Менеджер з логістики'),
|
||||
('Капітан корабля'),
|
||||
('Інженер-механік'),
|
||||
('Оператор порту'),
|
||||
('Фінансовий аналітик'),
|
||||
('Керівник вантажоперевезень'),
|
||||
(
|
||||
'Технік з обслуговування суден'
|
||||
),
|
||||
('Митний брокер'),
|
||||
('Логістичний асистент');
|
||||
|
||||
INSERT INTO
|
||||
ContactTypes (Name)
|
||||
VALUES ('Телефон'),
|
||||
('Електронна пошта'),
|
||||
('Факс'),
|
||||
('Поштова адреса'),
|
||||
('Skype'),
|
||||
('WhatsApp'),
|
||||
('Веб-сайт'),
|
||||
('Телеграм');
|
||||
|
||||
INSERT INTO
|
||||
ServiceTypes (Name, Description)
|
||||
VALUES (
|
||||
'Технічний огляд',
|
||||
'Комплексне технічне обстеження та оцінка стану судна.'
|
||||
),
|
||||
(
|
||||
'Ремонт двигуна',
|
||||
'Виконання ремонтних робіт та технічного обслуговування суднового двигуна.'
|
||||
),
|
||||
(
|
||||
'Мальовничі роботи',
|
||||
'Фарбування та зовнішній оздоблювальний ремонт корпусу судна.'
|
||||
),
|
||||
(
|
||||
'Технічне обслуговування електроніки',
|
||||
'Проведення робіт з налаштування та ремонту електронних систем на судні.'
|
||||
),
|
||||
(
|
||||
'Заміна обладнання',
|
||||
'Встановлення нового суднового обладнання та видалення застарілого.'
|
||||
),
|
||||
(
|
||||
'Очищення та змазування',
|
||||
'Профілактичне очищення та змащення механізмів та обладнання судна.'
|
||||
);
|
||||
|
||||
INSERT INTO
|
||||
Voyages (CountryFromId, CountryToId)
|
||||
SELECT (
|
||||
SELECT Id
|
||||
FROM Country
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) as CountryFromId, (
|
||||
SELECT Id
|
||||
FROM Country
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) as CountryToId
|
||||
FROM (
|
||||
SELECT 1
|
||||
UNION
|
||||
SELECT 2
|
||||
UNION
|
||||
SELECT 3
|
||||
UNION
|
||||
SELECT 4
|
||||
UNION
|
||||
SELECT 5
|
||||
) as Numbers;
|
||||
|
||||
INSERT INTO
|
||||
Persons (
|
||||
Passport,
|
||||
FirstName,
|
||||
LastName,
|
||||
PositionId
|
||||
)
|
||||
VALUES (
|
||||
'AA123456',
|
||||
'Іван',
|
||||
'Петров',
|
||||
1
|
||||
),
|
||||
(
|
||||
'BB789012',
|
||||
'Марія',
|
||||
'Іванова',
|
||||
2
|
||||
),
|
||||
(
|
||||
'CC345678',
|
||||
'Олег',
|
||||
'Сидоров',
|
||||
3
|
||||
),
|
||||
(
|
||||
'DD901234',
|
||||
'Наталія',
|
||||
'Коваленко',
|
||||
4
|
||||
),
|
||||
(
|
||||
'EE567890',
|
||||
'Андрій',
|
||||
'Смирнов',
|
||||
5
|
||||
),
|
||||
(
|
||||
'FF123890',
|
||||
'Тетяна',
|
||||
'Біліченко',
|
||||
6
|
||||
),
|
||||
(
|
||||
'GG456789',
|
||||
'Дмитро',
|
||||
'Мельник',
|
||||
7
|
||||
),
|
||||
(
|
||||
'HH678901',
|
||||
'Катерина',
|
||||
'Соколова',
|
||||
8
|
||||
),
|
||||
(
|
||||
'II234567',
|
||||
'Валентин',
|
||||
'Жуков',
|
||||
9
|
||||
),
|
||||
(
|
||||
'JJ890123',
|
||||
'Ольга',
|
||||
'Морозова',
|
||||
10
|
||||
),
|
||||
(
|
||||
'KK345678',
|
||||
'Анна',
|
||||
'Кравченко',
|
||||
5
|
||||
),
|
||||
(
|
||||
'LL901234',
|
||||
'Олександр',
|
||||
'Лисенко',
|
||||
8
|
||||
),
|
||||
(
|
||||
'MM567890',
|
||||
'Євгенія',
|
||||
'Денисенко',
|
||||
2
|
||||
);
|
||||
|
||||
INSERT INTO
|
||||
ContactInfo (
|
||||
Content,
|
||||
PersonId,
|
||||
ContactTypeId
|
||||
)
|
||||
VALUES ('+123456789', 1, 1),
|
||||
('email@example.com', 2, 2),
|
||||
('123 Main Street', 3, 3),
|
||||
('SkypeID123', 4, 4),
|
||||
('WhatsAppNumber', 5, 5),
|
||||
(
|
||||
'http://www.example.com',
|
||||
6,
|
||||
6
|
||||
),
|
||||
('TelegramUsername', 7, 7),
|
||||
('FaxNumber', 8, 8),
|
||||
('info@example.com', 9, 1),
|
||||
('555-1234', 10, 2),
|
||||
('456 Secondary Street', 11, 3),
|
||||
('SkypeID456', 12, 4),
|
||||
('TelegramUser567', 13, 7),
|
||||
('ViberNumber', 1, 5),
|
||||
(
|
||||
'http://www.example2.com',
|
||||
2,
|
||||
6
|
||||
),
|
||||
('FaxNumber2', 3, 8);
|
||||
|
||||
INSERT INTO
|
||||
Users (Password, PersonId)
|
||||
VALUES ('strongpassword1', 1),
|
||||
('securepass123', 2),
|
||||
('myp@ssw0rd', 3),
|
||||
('pass4you', 4),
|
||||
('secret123', 5);
|
||||
|
||||
INSERT INTO
|
||||
Docks (Name, MaxLength, MaxWidth)
|
||||
VALUES ('Причал 1', 100, 20),
|
||||
('Причал 2', 120, 25),
|
||||
('Причал 3', 150, 30),
|
||||
('Причал 4', 90, 15),
|
||||
('Причал 5', 110, 18),
|
||||
('Причал 6', 130, 22),
|
||||
('Причал 7', 140, 28),
|
||||
('Причал 8', 160, 35),
|
||||
('Причал 9', 105, 17),
|
||||
('Причал 10', 125, 23),
|
||||
('Причал 11', 115, 19),
|
||||
('Причал 12', 95, 14),
|
||||
('Причал 13', 145, 27),
|
||||
('Причал 14', 155, 33),
|
||||
('Причал 15', 165, 38);
|
||||
|
||||
INSERT INTO
|
||||
Ships (
|
||||
Name,
|
||||
Length,
|
||||
Width,
|
||||
Capacity,
|
||||
ShipTypeId,
|
||||
VoyageId,
|
||||
DockId
|
||||
)
|
||||
VALUES (
|
||||
'Корабель 1',
|
||||
50.5,
|
||||
10.5,
|
||||
500,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
),
|
||||
(
|
||||
'Корабель 2',
|
||||
60.2,
|
||||
12.8,
|
||||
700,
|
||||
2,
|
||||
2,
|
||||
2
|
||||
),
|
||||
(
|
||||
'Корабель 3',
|
||||
55.0,
|
||||
11.0,
|
||||
600,
|
||||
3,
|
||||
3,
|
||||
3
|
||||
),
|
||||
(
|
||||
'Корабель 4',
|
||||
45.8,
|
||||
9.5,
|
||||
450,
|
||||
4,
|
||||
4,
|
||||
4
|
||||
),
|
||||
(
|
||||
'Корабель 10',
|
||||
59.9,
|
||||
12.0,
|
||||
690,
|
||||
10,
|
||||
10,
|
||||
10
|
||||
),
|
||||
(
|
||||
'Корабель 11',
|
||||
57.2,
|
||||
11.2,
|
||||
590,
|
||||
11,
|
||||
11,
|
||||
11
|
||||
),
|
||||
(
|
||||
'Корабель 12',
|
||||
63.8,
|
||||
13.8,
|
||||
770,
|
||||
5,
|
||||
12,
|
||||
12
|
||||
),
|
||||
(
|
||||
'Корабель 13',
|
||||
52.4,
|
||||
10.8,
|
||||
540,
|
||||
3,
|
||||
9,
|
||||
13
|
||||
),
|
||||
(
|
||||
'Корабель 14',
|
||||
49.0,
|
||||
9.8,
|
||||
480,
|
||||
6,
|
||||
8,
|
||||
14
|
||||
),
|
||||
(
|
||||
'Корабель 15',
|
||||
66.5,
|
||||
14.0,
|
||||
820,
|
||||
8,
|
||||
5,
|
||||
15
|
||||
);
|
||||
|
||||
INSERT INTO
|
||||
Employees (PersonId)
|
||||
SELECT id
|
||||
FROM Persons
|
||||
ORDER BY RAND()
|
||||
LIMIT 5;
|
||||
|
||||
INSERT INTO
|
||||
Services (
|
||||
Date,
|
||||
Done,
|
||||
ShipId,
|
||||
ServiceTypeId
|
||||
)
|
||||
SELECT
|
||||
NOW() - INTERVAL FLOOR(RAND() * 365) DAY AS Date,
|
||||
ROUND(RAND()) AS Done,
|
||||
(
|
||||
SELECT id
|
||||
FROM Ships
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) AS ShipId,
|
||||
ROUND(RAND() * 6) + 1 AS ServiceTypeId
|
||||
FROM (
|
||||
SELECT id
|
||||
FROM `ShipTypes`
|
||||
LIMIT 5
|
||||
) AS t;
|
||||
|
||||
INSERT INTO
|
||||
ServiceEmployee (EmployeeId, ServiceId)
|
||||
SELECT ROUND(RAND() * 5) + 1 AS EmployeeId, ROUND(RAND() * 5) + 1 AS ServiceId
|
||||
FROM (
|
||||
SELECT id
|
||||
FROM Services
|
||||
LIMIT 5
|
||||
) AS t;
|
||||
|
||||
INSERT INTO
|
||||
DockEmplyee (DockId, EmployeeId)
|
||||
VALUES (1, 1),
|
||||
(2, 2),
|
||||
(3, 3),
|
||||
(4, 1),
|
||||
(5, 5);
|
||||
|
||||
INSERT INTO
|
||||
CrewPersons (PersonId, ShipId)
|
||||
SELECT ROUND(RAND() * (13 - 6) + 6) AS PersonId, (
|
||||
SELECT id
|
||||
FROM Ships
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) AS ShipId
|
||||
FROM (
|
||||
SELECT id
|
||||
FROM `Ships`
|
||||
LIMIT 10
|
||||
) AS t;
|
||||
|
||||
INSERT INTO
|
||||
Cargoes (
|
||||
Quantity,
|
||||
CargoTypeId,
|
||||
ShipId,
|
||||
PurposeId
|
||||
)
|
||||
SELECT
|
||||
ROUND(RAND() * 100) + 1 AS Quantity,
|
||||
(
|
||||
SELECT id
|
||||
FROM CargoTypes
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) AS CargoTypeId,
|
||||
(
|
||||
SELECT id
|
||||
FROM Ships
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) AS ShipId,
|
||||
(
|
||||
SELECT id
|
||||
FROM Purposes
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
) AS PurposeId
|
||||
FROM (
|
||||
SELECT id
|
||||
FROM Ships
|
||||
LIMIT 10
|
||||
) AS t;
|
||||
|
||||
SELECT Ships.Name, Voyages.CountryFromId
|
||||
FROM Ships
|
||||
JOIN Voyages ON Ships.VoyageId = Voyages.Id
|
||||
WHERE
|
||||
Voyages.CountryFromId = (
|
||||
SELECT id
|
||||
FROM `Country`
|
||||
ORDER BY RAND()
|
||||
LIMIT 1
|
||||
);
|
||||
|
||||
-- Вибірка кількості кораблів, що перебувають в кожному причалі:
|
||||
|
||||
SELECT Docks.Name AS DockName, COUNT(Ships.Id) AS ShipCount
|
||||
FROM Docks
|
||||
LEFT JOIN Ships ON Docks.Id = Ships.DockId
|
||||
GROUP BY
|
||||
Docks.Id;
|
||||
|
||||
-- Знаходження найбільшого та найменшого корабля за місткістю
|
||||
|
||||
SELECT MAX(Ships.Capacity) AS MaxCapacity, MIN(Ships.Capacity) AS MinCapacity
|
||||
FROM Ships;
|
||||
|
||||
-- Вибірка інформації про всі обслуговування, які ще не виконані
|
||||
|
||||
SELECT
|
||||
Services.Id,
|
||||
Services.Date,
|
||||
Ships.Name AS ShipName,
|
||||
ServiceTypes.Name AS ServiceTypeName
|
||||
FROM
|
||||
Services
|
||||
JOIN Ships ON Services.ShipId = Ships.Id
|
||||
JOIN ServiceTypes ON Services.ServiceTypeId = ServiceTypes.Id
|
||||
WHERE
|
||||
Services.Done = 0;
|
||||
|
||||
-- Список працівників та кількість обслуговувань, які вони виконали
|
||||
|
||||
SELECT Employees.Id, Persons.FirstName, Persons.LastName, COUNT(ServiceEmployee.ServiceId) AS ServicesCount
|
||||
FROM
|
||||
Employees
|
||||
JOIN Persons ON Employees.PersonId = Persons.Id
|
||||
LEFT JOIN ServiceEmployee ON Employees.Id = ServiceEmployee.EmployeeId
|
||||
GROUP BY
|
||||
Employees.Id;
|
||||
|
||||
-- Список вантажів разом із цілями та назвою корабля:
|
||||
|
||||
SELECT Cargoes.Id, Purposes.Name AS PurposeName, Ships.Name AS ShipName, Cargoes.Quantity
|
||||
FROM Cargoes
|
||||
JOIN Purposes ON Cargoes.PurposeId = Purposes.Id
|
||||
JOIN Ships ON Cargoes.ShipId = Ships.Id;
|
||||
|
||||
-- Загальний кількість вантажів, що відправляється з кожної країни:
|
||||
|
||||
SELECT Country.Name AS CountryName, SUM(Cargoes.Quantity) AS TotalCount
|
||||
FROM
|
||||
Voyages
|
||||
JOIN Country ON Voyages.CountryFromId = Country.Id
|
||||
JOIN Ships ON Voyages.Id = Ships.VoyageId
|
||||
JOIN Cargoes ON Ships.Id = Cargoes.ShipId
|
||||
GROUP BY
|
||||
Country.Id;
|
||||
Executable
+185
@@ -0,0 +1,185 @@
|
||||
create database PortDB character set utf8 collate utf8_bin;
|
||||
|
||||
use PortDB;
|
||||
|
||||
CREATE TABLE `Users` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Password` nvarchar (1000) NOT NULL COMMENT 'Пароль',
|
||||
`PersonId` integer COMMENT 'Дані людини'
|
||||
);
|
||||
|
||||
CREATE TABLE `Positions` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва позиції'
|
||||
);
|
||||
|
||||
CREATE TABLE `ContactInfo` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Content` nvarchar (255) NOT NULL COMMENT 'Дані про контакт',
|
||||
`PersonId` integer COMMENT 'Людина',
|
||||
`ContactTypeId` integer COMMENT 'Тип контакту'
|
||||
);
|
||||
|
||||
CREATE TABLE `ContactTypes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва типи контакту'
|
||||
);
|
||||
|
||||
CREATE TABLE `Services` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Date` timestamp NOT NULL COMMENT 'Дата обслуговування',
|
||||
`Done` boolean NOT NULL DEFAULT 0 COMMENT 'Виконане',
|
||||
`ShipId` integer COMMENT 'Корабель',
|
||||
`ServiceTypeId` integer COMMENT 'Тип обслуговування'
|
||||
);
|
||||
|
||||
CREATE TABLE `ServiceTypes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва типу',
|
||||
`Description` nvarchar (255) NOT NULL COMMENT 'Опис обслуговування'
|
||||
);
|
||||
|
||||
CREATE TABLE `Ships` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) NOT NULL COMMENT 'Назва корабля',
|
||||
`Length` decimal(10, 2) NOT NULL COMMENT 'Довжина корабля',
|
||||
`Width` decimal(10, 2) NOT NULL COMMENT 'Ширина корабля',
|
||||
`Capacity` integer NOT NULL COMMENT 'Місткість корабля (у тоннах)',
|
||||
`ShipTypeId` integer COMMENT 'Тип корабля',
|
||||
`VoyageId` integer COMMENT 'Інформація про рейс',
|
||||
`DockId` integer COMMENT 'Причал'
|
||||
);
|
||||
|
||||
CREATE TABLE `ShipTypes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва типу'
|
||||
);
|
||||
|
||||
CREATE TABLE `Docks` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) NOT NULL COMMENT 'Назва причалу',
|
||||
`MaxLength` integer NOT NULL COMMENT 'Максимальна довжина причалу',
|
||||
`MaxWidth` integer NOT NULL COMMENT 'Максимальна ширина причалу'
|
||||
);
|
||||
|
||||
CREATE TABLE `Cargoes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Quantity` integer NOT NULL COMMENT 'Кількість',
|
||||
`CargoTypeId` integer COMMENT 'Тип вантажу',
|
||||
`ShipId` integer COMMENT 'Корабель',
|
||||
`PurposeId` integer COMMENT 'Ціль'
|
||||
);
|
||||
|
||||
CREATE TABLE `Purposes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва цілі',
|
||||
`Description` nvarchar (255) NOT NULL COMMENT 'Опис цілі'
|
||||
);
|
||||
|
||||
CREATE TABLE `CargoTypes` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (255) UNIQUE NOT NULL COMMENT 'Назва типу'
|
||||
);
|
||||
|
||||
CREATE TABLE `Persons` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Passport` nvarchar (1000) UNIQUE NOT NULL COMMENT 'Паспортні дані',
|
||||
`FirstName` nvarchar (255) NOT NULL COMMENT 'Ім\'я',
|
||||
`LastName` nvarchar (255) NOT NULL COMMENT 'Прізвище',
|
||||
`PositionId` integer COMMENT 'Посада'
|
||||
);
|
||||
|
||||
CREATE TABLE `CrewPersons` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`PersonId` integer COMMENT 'Дані людини',
|
||||
`ShipId` integer COMMENT 'Корабель'
|
||||
);
|
||||
|
||||
CREATE TABLE `Employees` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`PersonId` integer COMMENT 'Дані людини'
|
||||
);
|
||||
|
||||
CREATE TABLE `ServiceEmployee` (
|
||||
`EmployeeId` integer COMMENT 'Працівник',
|
||||
`ServiceId` integer COMMENT 'Обслуговування'
|
||||
);
|
||||
|
||||
CREATE TABLE `Country` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`Name` nvarchar (50) UNIQUE NOT NULL COMMENT 'Назва країни'
|
||||
);
|
||||
|
||||
CREATE TABLE `DockEmplyee` (
|
||||
`DockId` integer COMMENT 'Причал',
|
||||
`EmployeeId` integer COMMENT 'Працівник'
|
||||
);
|
||||
|
||||
CREATE TABLE `Voyages` (
|
||||
`Id` integer PRIMARY KEY AUTO_INCREMENT,
|
||||
`CountryFromId` integer COMMENT 'Країна відправки',
|
||||
`CountryToId` integer COMMENT 'Країна доставки'
|
||||
);
|
||||
|
||||
ALTER TABLE `Users`
|
||||
ADD FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`);
|
||||
|
||||
ALTER TABLE `ContactInfo`
|
||||
ADD FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`);
|
||||
|
||||
ALTER TABLE `ContactInfo`
|
||||
ADD FOREIGN KEY (`ContactTypeId`) REFERENCES `ContactTypes` (`Id`);
|
||||
|
||||
ALTER TABLE `Services`
|
||||
ADD FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`);
|
||||
|
||||
ALTER TABLE `Services`
|
||||
ADD FOREIGN KEY (`ServiceTypeId`) REFERENCES `ServiceTypes` (`Id`);
|
||||
|
||||
ALTER TABLE `Ships`
|
||||
ADD FOREIGN KEY (`ShipTypeId`) REFERENCES `ShipTypes` (`Id`);
|
||||
|
||||
ALTER TABLE `Ships`
|
||||
ADD FOREIGN KEY (`VoyageId`) REFERENCES `Voyages` (`Id`);
|
||||
|
||||
ALTER TABLE `Ships`
|
||||
ADD FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`);
|
||||
|
||||
ALTER TABLE `Cargoes`
|
||||
ADD FOREIGN KEY (`CargoTypeId`) REFERENCES `CargoTypes` (`Id`);
|
||||
|
||||
ALTER TABLE `Cargoes`
|
||||
ADD FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`);
|
||||
|
||||
ALTER TABLE `Cargoes`
|
||||
ADD FOREIGN KEY (`PurposeId`) REFERENCES `Purposes` (`Id`);
|
||||
|
||||
ALTER TABLE `Persons`
|
||||
ADD FOREIGN KEY (`PositionId`) REFERENCES `Positions` (`Id`);
|
||||
|
||||
ALTER TABLE `CrewPersons`
|
||||
ADD FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`);
|
||||
|
||||
ALTER TABLE `CrewPersons`
|
||||
ADD FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`);
|
||||
|
||||
ALTER TABLE `Employees`
|
||||
ADD FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`);
|
||||
|
||||
ALTER TABLE `ServiceEmployee`
|
||||
ADD FOREIGN KEY (`EmployeeId`) REFERENCES `Employees` (`Id`);
|
||||
|
||||
ALTER TABLE `ServiceEmployee`
|
||||
ADD FOREIGN KEY (`ServiceId`) REFERENCES `Services` (`Id`);
|
||||
|
||||
ALTER TABLE `DockEmplyee`
|
||||
ADD FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`);
|
||||
|
||||
ALTER TABLE `DockEmplyee`
|
||||
ADD FOREIGN KEY (`EmployeeId`) REFERENCES `Employees` (`Id`);
|
||||
|
||||
ALTER TABLE `Voyages`
|
||||
ADD FOREIGN KEY (`CountryFromId`) REFERENCES `Country` (`Id`);
|
||||
|
||||
ALTER TABLE `Voyages`
|
||||
ADD FOREIGN KEY (`CountryToId`) REFERENCES `Country` (`Id`);
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
services:
|
||||
db:
|
||||
image: mysql:latest
|
||||
container_name: mysql-container-2
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: qwerty-1
|
||||
MYSQL_DATABASE: OrdersDB
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- sqladvanced_mysql_data:/var/lib/mysql
|
||||
|
||||
backup-service:
|
||||
build: ./backup
|
||||
container_name: mysql-backup-runner
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: qwerty-1
|
||||
SFTP_HOST: "192.168.3.142"
|
||||
SFTP_USER: "vitaliilitvinchuk"
|
||||
EMAIL_TO: "vitalii.litvinchuk@oa.edu.ua"
|
||||
volumes:
|
||||
- ~/.ssh/id_rsa_docker:/root/.ssh/id_rsa:ro
|
||||
|
||||
volumes:
|
||||
sqladvanced_mysql_data:
|
||||
external: true
|
||||
Executable
+568
@@ -0,0 +1,568 @@
|
||||
-- MySQL dump 10.13 Distrib 9.6.0, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: PortDB
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 9.6.0
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!50503 SET NAMES utf8mb4 */;
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
SET @MYSQLDUMP_TEMP_LOG_BIN = @@SESSION.SQL_LOG_BIN;
|
||||
SET @@SESSION.SQL_LOG_BIN= 0;
|
||||
|
||||
--
|
||||
-- GTID state at the beginning of the backup
|
||||
--
|
||||
|
||||
|
||||
--
|
||||
-- Table structure for table `CargoTypes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `CargoTypes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `CargoTypes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва типу',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `CargoTypes`
|
||||
--
|
||||
|
||||
LOCK TABLES `CargoTypes` WRITE;
|
||||
/*!40000 ALTER TABLE `CargoTypes` DISABLE KEYS */;
|
||||
INSERT INTO `CargoTypes` VALUES (8,'Автомобілі'),(5,'Деревинні матеріали'),(1,'Контейнери'),(2,'Рідини'),(3,'Сипучі матеріали'),(10,'Спеціальні вантажі'),(4,'Сталеві вироби'),(7,'Технічне обладнання'),(9,'Товари загального вжитку'),(6,'Харчові продукти');
|
||||
/*!40000 ALTER TABLE `CargoTypes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Cargoes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Cargoes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Cargoes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Quantity` int NOT NULL COMMENT 'Кількість',
|
||||
`CargoTypeId` int DEFAULT NULL COMMENT 'Тип вантажу',
|
||||
`ShipId` int DEFAULT NULL COMMENT 'Корабель',
|
||||
`PurposeId` int DEFAULT NULL COMMENT 'Ціль',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `CargoTypeId` (`CargoTypeId`),
|
||||
KEY `ShipId` (`ShipId`),
|
||||
KEY `PurposeId` (`PurposeId`),
|
||||
CONSTRAINT `Cargoes_ibfk_1` FOREIGN KEY (`CargoTypeId`) REFERENCES `CargoTypes` (`Id`),
|
||||
CONSTRAINT `Cargoes_ibfk_2` FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`),
|
||||
CONSTRAINT `Cargoes_ibfk_3` FOREIGN KEY (`PurposeId`) REFERENCES `Purposes` (`Id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Cargoes`
|
||||
--
|
||||
|
||||
LOCK TABLES `Cargoes` WRITE;
|
||||
/*!40000 ALTER TABLE `Cargoes` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `Cargoes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `ContactInfo`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `ContactInfo`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `ContactInfo` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Content` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Дані про контакт',
|
||||
`PersonId` int DEFAULT NULL COMMENT 'Людина',
|
||||
`ContactTypeId` int DEFAULT NULL COMMENT 'Тип контакту',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `PersonId` (`PersonId`),
|
||||
KEY `ContactTypeId` (`ContactTypeId`),
|
||||
CONSTRAINT `ContactInfo_ibfk_1` FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`),
|
||||
CONSTRAINT `ContactInfo_ibfk_2` FOREIGN KEY (`ContactTypeId`) REFERENCES `ContactTypes` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `ContactInfo`
|
||||
--
|
||||
|
||||
LOCK TABLES `ContactInfo` WRITE;
|
||||
/*!40000 ALTER TABLE `ContactInfo` DISABLE KEYS */;
|
||||
INSERT INTO `ContactInfo` VALUES (1,'+123456789',1,1),(2,'email@example.com',2,2),(3,'123 Main Street',3,3),(4,'SkypeID123',4,4),(5,'WhatsAppNumber',5,5),(6,'http://www.example.com',6,6),(7,'TelegramUsername',7,7),(8,'FaxNumber',8,8),(9,'info@example.com',9,1),(10,'555-1234',10,2),(11,'456 Secondary Street',11,3),(12,'SkypeID456',12,4),(13,'TelegramUser567',13,7),(14,'ViberNumber',1,5),(15,'http://www.example2.com',2,6),(16,'FaxNumber2',3,8),(17,'+123456789',1,1),(18,'email@example.com',2,2),(19,'123 Main Street',3,3),(20,'SkypeID123',4,4),(21,'WhatsAppNumber',5,5),(22,'http://www.example.com',6,6),(23,'TelegramUsername',7,7),(24,'FaxNumber',8,8),(25,'info@example.com',9,1),(26,'555-1234',10,2),(27,'456 Secondary Street',11,3),(28,'SkypeID456',12,4),(29,'TelegramUser567',13,7),(30,'ViberNumber',1,5),(31,'http://www.example2.com',2,6),(32,'FaxNumber2',3,8),(33,'+123456789',1,1),(34,'email@example.com',2,2),(35,'123 Main Street',3,3),(36,'SkypeID123',4,4),(37,'WhatsAppNumber',5,5),(38,'http://www.example.com',6,6),(39,'TelegramUsername',7,7),(40,'FaxNumber',8,8),(41,'info@example.com',9,1),(42,'555-1234',10,2),(43,'456 Secondary Street',11,3),(44,'SkypeID456',12,4),(45,'TelegramUser567',13,7),(46,'ViberNumber',1,5),(47,'http://www.example2.com',2,6),(48,'FaxNumber2',3,8);
|
||||
/*!40000 ALTER TABLE `ContactInfo` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `ContactTypes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `ContactTypes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `ContactTypes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва типи контакту',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `ContactTypes`
|
||||
--
|
||||
|
||||
LOCK TABLES `ContactTypes` WRITE;
|
||||
/*!40000 ALTER TABLE `ContactTypes` DISABLE KEYS */;
|
||||
INSERT INTO `ContactTypes` VALUES (5,'Skype'),(6,'WhatsApp'),(7,'Веб-сайт'),(2,'Електронна пошта'),(4,'Поштова адреса'),(8,'Телеграм'),(1,'Телефон'),(3,'Факс');
|
||||
/*!40000 ALTER TABLE `ContactTypes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Country`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Country`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Country` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва країни',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=263 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Country`
|
||||
--
|
||||
|
||||
LOCK TABLES `Country` WRITE;
|
||||
/*!40000 ALTER TABLE `Country` DISABLE KEYS */;
|
||||
INSERT INTO `Country` VALUES (54,'Єгипет'),(55,'Ємен'),(59,'Ізраїль'),(60,'Індія'),(61,'Індонезія'),(62,'Ірак'),(63,'Іран'),(64,'Ірландія'),(65,'Ісландія'),(66,'Іспанія'),(67,'Італія'),(2,'Австрія'),(1,'Австралія'),(3,'Азербайджан'),(4,'Албанія'),(5,'Алжир'),(6,'Ангола'),(7,'Андорра'),(8,'Аргентина'),(9,'Арменія'),(10,'Афганістан'),(18,'Білорусь'),(11,'Багамські Острови'),(12,'Бангладеш'),(13,'Барбадос'),(14,'Бахрейн'),(15,'Беліз'),(16,'Бельгія'),(17,'Бенін'),(20,'Болівія'),(19,'Болгарія'),(21,'Боснія і Герцеговина'),(22,'Ботсвана'),(23,'Бразилія'),(24,'Бруней'),(25,'Буркіна-Фасо'),(26,'Бурунді'),(27,'Бутан'),(28,'В\'єтнам'),(30,'Гаїті'),(29,'Габон'),(31,'Гайана'),(32,'Гамбія'),(33,'Гана'),(36,'Гвінея'),(37,'Гвінея - Бісау'),(34,'Гваделупа'),(35,'Гватемала'),(38,'Гондурас'),(39,'Гренада'),(42,'Гренландія'),(40,'Греція'),(41,'Грузія'),(43,'Данія'),(44,'Демократична Республіка Конго'),(45,'Джибуті'),(46,'Домініка'),(47,'Домініканська Республіка'),(48,'Еквадор'),(49,'Екваторіальна Гвінея'),(50,'Еритрея'),(51,'Есватіні'),(52,'Естонія'),(53,'Ефіопія'),(58,'Зімбабве'),(56,'Замбія'),(57,'Західна Сахара'),(68,'Йорданія'),(77,'Кіпр'),(78,'Кірібаті'),(69,'Казахстан'),(70,'Кайманові Острови'),(71,'Камбоджа'),(72,'Камерун'),(73,'Канада'),(74,'Катар'),(75,'Кенія'),(76,'Киргизстан'),(79,'Китай'),(80,'Колумбія'),(81,'Коморські Острови'),(82,'Конго'),(85,'Косово'),(86,'Коста - Рика'),(87,'Куба'),(88,'Кувейт'),(93,'Ліберія'),(95,'Лівія'),(94,'Ліван'),(96,'Ліхтенштейн'),(89,'Лаос'),(90,'Латвія'),(91,'Лесото'),(92,'Литва'),(97,'Люксембург'),(115,'М\'янма (Бірма)'),(98,'Маврикій'),(99,'Мавританія'),(100,'Мадагаскар'),(101,'Македонія'),(104,'Малі'),(102,'Малаві'),(103,'Малайзія'),(105,'Мальдіви'),(106,'Мальта'),(107,'Марокко'),(108,'Мартиніка'),(109,'Маршаллові Острови'),(110,'Мексика'),(111,'Мозамбік'),(112,'Молдова'),(113,'Монако'),(114,'Монголія'),(119,'Нігер'),(120,'Нігерія'),(121,'Нідерланди'),(122,'Нікарагуа'),(123,'Німеччина'),(116,'Намібія'),(117,'Науру'),(118,'Непал'),(124,'Нова Зеландія'),(125,'Норвегія'),(126,'ОАЕ'),(127,'Оман'),(84,'Південна Корея'),(83,'Північна Корея'),(128,'Пакистан'),(129,'Палау'),(130,'Палестина'),(131,'Панама');
|
||||
/*!40000 ALTER TABLE `Country` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `CrewPersons`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `CrewPersons`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `CrewPersons` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`PersonId` int DEFAULT NULL COMMENT 'Дані людини',
|
||||
`ShipId` int DEFAULT NULL COMMENT 'Корабель',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `PersonId` (`PersonId`),
|
||||
KEY `ShipId` (`ShipId`),
|
||||
CONSTRAINT `CrewPersons_ibfk_1` FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`),
|
||||
CONSTRAINT `CrewPersons_ibfk_2` FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `CrewPersons`
|
||||
--
|
||||
|
||||
LOCK TABLES `CrewPersons` WRITE;
|
||||
/*!40000 ALTER TABLE `CrewPersons` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `CrewPersons` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `DockEmplyee`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `DockEmplyee`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `DockEmplyee` (
|
||||
`DockId` int DEFAULT NULL COMMENT 'Причал',
|
||||
`EmployeeId` int DEFAULT NULL COMMENT 'Працівник',
|
||||
KEY `DockId` (`DockId`),
|
||||
KEY `EmployeeId` (`EmployeeId`),
|
||||
CONSTRAINT `DockEmplyee_ibfk_1` FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`),
|
||||
CONSTRAINT `DockEmplyee_ibfk_2` FOREIGN KEY (`EmployeeId`) REFERENCES `Employees` (`Id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `DockEmplyee`
|
||||
--
|
||||
|
||||
LOCK TABLES `DockEmplyee` WRITE;
|
||||
/*!40000 ALTER TABLE `DockEmplyee` DISABLE KEYS */;
|
||||
INSERT INTO `DockEmplyee` VALUES (1,1),(2,2),(3,3),(4,1),(5,5),(1,1),(2,2),(3,3),(4,1),(5,5);
|
||||
/*!40000 ALTER TABLE `DockEmplyee` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Docks`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Docks`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Docks` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва причалу',
|
||||
`MaxLength` int NOT NULL COMMENT 'Максимальна довжина причалу',
|
||||
`MaxWidth` int NOT NULL COMMENT 'Максимальна ширина причалу',
|
||||
PRIMARY KEY (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=46 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Docks`
|
||||
--
|
||||
|
||||
LOCK TABLES `Docks` WRITE;
|
||||
/*!40000 ALTER TABLE `Docks` DISABLE KEYS */;
|
||||
INSERT INTO `Docks` VALUES (1,'Причал 1',100,20),(2,'Причал 2',120,25),(3,'Причал 3',150,30),(4,'Причал 4',90,15),(5,'Причал 5',110,18),(6,'Причал 6',130,22),(7,'Причал 7',140,28),(8,'Причал 8',160,35),(9,'Причал 9',105,17),(10,'Причал 10',125,23),(11,'Причал 11',115,19),(12,'Причал 12',95,14),(13,'Причал 13',145,27),(14,'Причал 14',155,33),(15,'Причал 15',165,38),(16,'Причал 1',100,20),(17,'Причал 2',120,25),(18,'Причал 3',150,30),(19,'Причал 4',90,15),(20,'Причал 5',110,18),(21,'Причал 6',130,22),(22,'Причал 7',140,28),(23,'Причал 8',160,35),(24,'Причал 9',105,17),(25,'Причал 10',125,23),(26,'Причал 11',115,19),(27,'Причал 12',95,14),(28,'Причал 13',145,27),(29,'Причал 14',155,33),(30,'Причал 15',165,38),(31,'Причал 1',100,20),(32,'Причал 2',120,25),(33,'Причал 3',150,30),(34,'Причал 4',90,15),(35,'Причал 5',110,18),(36,'Причал 6',130,22),(37,'Причал 7',140,28),(38,'Причал 8',160,35),(39,'Причал 9',105,17),(40,'Причал 10',125,23),(41,'Причал 11',115,19),(42,'Причал 12',95,14),(43,'Причал 13',145,27),(44,'Причал 14',155,33),(45,'Причал 15',165,38);
|
||||
/*!40000 ALTER TABLE `Docks` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Employees`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Employees`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Employees` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`PersonId` int DEFAULT NULL COMMENT 'Дані людини',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `PersonId` (`PersonId`),
|
||||
CONSTRAINT `Employees_ibfk_1` FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Employees`
|
||||
--
|
||||
|
||||
LOCK TABLES `Employees` WRITE;
|
||||
/*!40000 ALTER TABLE `Employees` DISABLE KEYS */;
|
||||
INSERT INTO `Employees` VALUES (1,1),(3,3),(2,8),(5,10),(4,13);
|
||||
/*!40000 ALTER TABLE `Employees` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Persons`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Persons`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Persons` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Passport` varchar(1000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Паспортні дані',
|
||||
`FirstName` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Ім''я',
|
||||
`LastName` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Прізвище',
|
||||
`PositionId` int DEFAULT NULL COMMENT 'Посада',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Passport` (`Passport`),
|
||||
KEY `PositionId` (`PositionId`),
|
||||
CONSTRAINT `Persons_ibfk_1` FOREIGN KEY (`PositionId`) REFERENCES `Positions` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=40 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Persons`
|
||||
--
|
||||
|
||||
LOCK TABLES `Persons` WRITE;
|
||||
/*!40000 ALTER TABLE `Persons` DISABLE KEYS */;
|
||||
INSERT INTO `Persons` VALUES (1,'AA123456','Іван','Петров',1),(2,'BB789012','Марія','Іванова',2),(3,'CC345678','Олег','Сидоров',3),(4,'DD901234','Наталія','Коваленко',4),(5,'EE567890','Андрій','Смирнов',5),(6,'FF123890','Тетяна','Біліченко',6),(7,'GG456789','Дмитро','Мельник',7),(8,'HH678901','Катерина','Соколова',8),(9,'II234567','Валентин','Жуков',9),(10,'JJ890123','Ольга','Морозова',10),(11,'KK345678','Анна','Кравченко',5),(12,'LL901234','Олександр','Лисенко',8),(13,'MM567890','Євгенія','Денисенко',2);
|
||||
/*!40000 ALTER TABLE `Persons` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Positions`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Positions`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Positions` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва позиції',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Positions`
|
||||
--
|
||||
|
||||
LOCK TABLES `Positions` WRITE;
|
||||
/*!40000 ALTER TABLE `Positions` DISABLE KEYS */;
|
||||
INSERT INTO `Positions` VALUES (4,'Інженер-механік'),(1,'Директор'),(3,'Капітан корабля'),(7,'Керівник вантажоперевезень'),(10,'Логістичний асистент'),(2,'Менеджер з логістики'),(9,'Митний брокер'),(5,'Оператор порту'),(8,'Технік з обслуговування суден'),(6,'Фінансовий аналітик');
|
||||
/*!40000 ALTER TABLE `Positions` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Purposes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Purposes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Purposes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва цілі',
|
||||
`Description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Опис цілі',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Purposes`
|
||||
--
|
||||
|
||||
LOCK TABLES `Purposes` WRITE;
|
||||
/*!40000 ALTER TABLE `Purposes` DISABLE KEYS */;
|
||||
INSERT INTO `Purposes` VALUES (1,'Перевезення сировини','Перевезення різноманітних сировинних матеріалів на виробництво.'),(2,'Експорт товарів','Вивезення готової продукції за кордон для продажу.'),(3,'Імпорт сировини','Закупівля різноманітних сировинних матеріалів з-за кордону.'),(4,'Транспортування контейнерів','Перевезення контейнерів із товаром між портами.'),(5,'Доставка харчових продуктів','Перевезення продуктів харчування великими суднами.'),(6,'Енергетичні цілі','Транспортування палива та енергетичних ресурсів морем.'),(7,'Будівельні матеріали','Перевезення будівельних матеріалів для проектів на узбережжі.'),(8,'Масова перевезення','Транспортування великих обсягів товарів для оптових партнерів.'),(9,'Транзитне сполучення','Проходження через території кількох країн у маршруті доставки.');
|
||||
/*!40000 ALTER TABLE `Purposes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `ServiceEmployee`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `ServiceEmployee`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `ServiceEmployee` (
|
||||
`EmployeeId` int DEFAULT NULL COMMENT 'Працівник',
|
||||
`ServiceId` int DEFAULT NULL COMMENT 'Обслуговування',
|
||||
KEY `EmployeeId` (`EmployeeId`),
|
||||
KEY `ServiceId` (`ServiceId`),
|
||||
CONSTRAINT `ServiceEmployee_ibfk_1` FOREIGN KEY (`EmployeeId`) REFERENCES `Employees` (`Id`),
|
||||
CONSTRAINT `ServiceEmployee_ibfk_2` FOREIGN KEY (`ServiceId`) REFERENCES `Services` (`Id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `ServiceEmployee`
|
||||
--
|
||||
|
||||
LOCK TABLES `ServiceEmployee` WRITE;
|
||||
/*!40000 ALTER TABLE `ServiceEmployee` DISABLE KEYS */;
|
||||
/*!40000 ALTER TABLE `ServiceEmployee` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `ServiceTypes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `ServiceTypes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `ServiceTypes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва типу',
|
||||
`Description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Опис обслуговування',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `ServiceTypes`
|
||||
--
|
||||
|
||||
LOCK TABLES `ServiceTypes` WRITE;
|
||||
/*!40000 ALTER TABLE `ServiceTypes` DISABLE KEYS */;
|
||||
INSERT INTO `ServiceTypes` VALUES (1,'Технічний огляд','Комплексне технічне обстеження та оцінка стану судна.'),(2,'Ремонт двигуна','Виконання ремонтних робіт та технічного обслуговування суднового двигуна.'),(3,'Мальовничі роботи','Фарбування та зовнішній оздоблювальний ремонт корпусу судна.'),(4,'Технічне обслуговування електроніки','Проведення робіт з налаштування та ремонту електронних систем на судні.'),(5,'Заміна обладнання','Встановлення нового суднового обладнання та видалення застарілого.'),(6,'Очищення та змазування','Профілактичне очищення та змащення механізмів та обладнання судна.');
|
||||
/*!40000 ALTER TABLE `ServiceTypes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Services`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Services`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Services` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Date` timestamp NOT NULL COMMENT 'Дата обслуговування',
|
||||
`Done` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Виконане',
|
||||
`ShipId` int DEFAULT NULL COMMENT 'Корабель',
|
||||
`ServiceTypeId` int DEFAULT NULL COMMENT 'Тип обслуговування',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `ShipId` (`ShipId`),
|
||||
KEY `ServiceTypeId` (`ServiceTypeId`),
|
||||
CONSTRAINT `Services_ibfk_1` FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`),
|
||||
CONSTRAINT `Services_ibfk_2` FOREIGN KEY (`ServiceTypeId`) REFERENCES `ServiceTypes` (`Id`),
|
||||
CONSTRAINT `Services_ibfk_3` FOREIGN KEY (`ShipId`) REFERENCES `Ships` (`Id`),
|
||||
CONSTRAINT `Services_ibfk_4` FOREIGN KEY (`ServiceTypeId`) REFERENCES `ServiceTypes` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Services`
|
||||
--
|
||||
|
||||
LOCK TABLES `Services` WRITE;
|
||||
/*!40000 ALTER TABLE `Services` DISABLE KEYS */;
|
||||
INSERT INTO `Services` VALUES (4,'2025-05-24 14:10:31',0,NULL,2),(5,'2025-08-18 14:10:31',1,NULL,4),(6,'2025-09-20 14:10:31',0,NULL,6),(7,'2025-08-04 14:10:31',1,NULL,5),(8,'2025-12-07 14:10:31',1,NULL,4),(11,'2025-08-29 14:12:28',0,NULL,5),(12,'2025-07-26 14:12:28',0,NULL,1),(13,'2025-08-06 14:12:28',0,NULL,2),(14,'2025-06-13 14:12:28',0,NULL,5),(15,'2025-10-10 14:12:28',0,NULL,6);
|
||||
/*!40000 ALTER TABLE `Services` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `ShipTypes`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `ShipTypes`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `ShipTypes` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва типу',
|
||||
PRIMARY KEY (`Id`),
|
||||
UNIQUE KEY `Name` (`Name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `ShipTypes`
|
||||
--
|
||||
|
||||
LOCK TABLES `ShipTypes` WRITE;
|
||||
/*!40000 ALTER TABLE `ShipTypes` DISABLE KEYS */;
|
||||
INSERT INTO `ShipTypes` VALUES (7,'Багатоцільовий корабель'),(1,'Балкер'),(5,'Бункеровоз'),(10,'Вантажівка-перевізник (Ferry)'),(2,'Контейнеровоз'),(6,'Круїзний лайнер'),(9,'Лінійний корабель'),(11,'Пасажирський корабель'),(4,'Ро-Ро (Roll-on/Roll-off)'),(3,'Танкер'),(8,'Трал');
|
||||
/*!40000 ALTER TABLE `ShipTypes` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Ships`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Ships`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Ships` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Назва корабля',
|
||||
`Length` decimal(10,2) NOT NULL COMMENT 'Довжина корабля',
|
||||
`Width` decimal(10,2) NOT NULL COMMENT 'Ширина корабля',
|
||||
`Capacity` int NOT NULL COMMENT 'Місткість корабля (у тоннах)',
|
||||
`ShipTypeId` int DEFAULT NULL COMMENT 'Тип корабля',
|
||||
`VoyageId` int DEFAULT NULL COMMENT 'Інформація про рейс',
|
||||
`DockId` int DEFAULT NULL COMMENT 'Причал',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `ShipTypeId` (`ShipTypeId`),
|
||||
KEY `VoyageId` (`VoyageId`),
|
||||
KEY `DockId` (`DockId`),
|
||||
CONSTRAINT `Ships_ibfk_1` FOREIGN KEY (`ShipTypeId`) REFERENCES `ShipTypes` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_2` FOREIGN KEY (`VoyageId`) REFERENCES `Voyages` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_3` FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_4` FOREIGN KEY (`VoyageId`) REFERENCES `Voyages` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_5` FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_6` FOREIGN KEY (`ShipTypeId`) REFERENCES `ShipTypes` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_7` FOREIGN KEY (`ShipTypeId`) REFERENCES `ShipTypes` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_8` FOREIGN KEY (`VoyageId`) REFERENCES `Voyages` (`Id`),
|
||||
CONSTRAINT `Ships_ibfk_9` FOREIGN KEY (`DockId`) REFERENCES `Docks` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Ships`
|
||||
--
|
||||
|
||||
LOCK TABLES `Ships` WRITE;
|
||||
/*!40000 ALTER TABLE `Ships` DISABLE KEYS */;
|
||||
INSERT INTO `Ships` VALUES (91,'Корабель 1',50.50,10.50,500,1,1,1),(92,'Корабель 2',60.20,12.80,700,2,2,2),(93,'Корабель 3',55.00,11.00,600,3,3,3),(94,'Корабель 4',45.80,9.50,450,4,4,4),(95,'Корабель 10',59.90,12.00,690,10,10,10),(96,'Корабель 11',57.20,11.20,590,11,11,11),(97,'Корабель 12',63.80,13.80,770,5,12,12),(98,'Корабель 13',52.40,10.80,540,3,9,13),(99,'Корабель 14',49.00,9.80,480,6,8,14),(100,'Корабель 15',66.50,14.00,820,8,5,15);
|
||||
/*!40000 ALTER TABLE `Ships` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Users`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Users`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Users` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`Password` varchar(1000) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Пароль',
|
||||
`PersonId` int DEFAULT NULL COMMENT 'Дані людини',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `PersonId` (`PersonId`),
|
||||
CONSTRAINT `Users_ibfk_1` FOREIGN KEY (`PersonId`) REFERENCES `Persons` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Users`
|
||||
--
|
||||
|
||||
LOCK TABLES `Users` WRITE;
|
||||
/*!40000 ALTER TABLE `Users` DISABLE KEYS */;
|
||||
INSERT INTO `Users` VALUES (1,'strongpassword1',1),(2,'securepass123',2),(3,'myp@ssw0rd',3),(4,'pass4you',4),(5,'secret123',5),(6,'strongpassword1',1),(7,'securepass123',2),(8,'myp@ssw0rd',3),(9,'pass4you',4),(10,'secret123',5),(11,'strongpassword1',1),(12,'securepass123',2),(13,'myp@ssw0rd',3),(14,'pass4you',4),(15,'secret123',5);
|
||||
/*!40000 ALTER TABLE `Users` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
--
|
||||
-- Table structure for table `Voyages`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `Voyages`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!50503 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `Voyages` (
|
||||
`Id` int NOT NULL AUTO_INCREMENT,
|
||||
`CountryFromId` int DEFAULT NULL COMMENT 'Країна відправки',
|
||||
`CountryToId` int DEFAULT NULL COMMENT 'Країна доставки',
|
||||
PRIMARY KEY (`Id`),
|
||||
KEY `CountryFromId` (`CountryFromId`),
|
||||
KEY `CountryToId` (`CountryToId`),
|
||||
CONSTRAINT `Voyages_ibfk_1` FOREIGN KEY (`CountryFromId`) REFERENCES `Country` (`Id`),
|
||||
CONSTRAINT `Voyages_ibfk_2` FOREIGN KEY (`CountryToId`) REFERENCES `Country` (`Id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Dumping data for table `Voyages`
|
||||
--
|
||||
|
||||
LOCK TABLES `Voyages` WRITE;
|
||||
/*!40000 ALTER TABLE `Voyages` DISABLE KEYS */;
|
||||
INSERT INTO `Voyages` VALUES (1,26,66),(2,97,8),(3,117,38),(4,6,61),(5,125,31),(8,1,92),(9,118,66),(10,58,32),(11,104,8),(12,49,42),(15,34,71),(16,122,35),(17,123,76),(18,36,117),(19,64,15);
|
||||
/*!40000 ALTER TABLE `Voyages` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;
|
||||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
-- Dump completed on 2026-03-25 14:33:32
|
||||
Reference in New Issue
Block a user