100 lines
5.3 KiB
SQL
100 lines
5.3 KiB
SQL
-- MyEMS Production Database
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Schema myems_production_db
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- MyEMS Production Database
|
|
DROP DATABASE IF EXISTS `myems_production_db` ;
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Database myems_production_db
|
|
--
|
|
-- MyEMS Production Database
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
CREATE DATABASE IF NOT EXISTS `myems_production_db` ;
|
|
USE `myems_production_db` ;
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_products`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_products` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`name` VARCHAR(128) NOT NULL,
|
|
`uuid` CHAR(36) NOT NULL,
|
|
`unit_of_measure` VARCHAR(32) NOT NULL,
|
|
`tag` VARCHAR(128) NOT NULL,
|
|
`coefficient_standard_product` DECIMAL(18, 3) NOT NULL DEFAULT 1.0,
|
|
PRIMARY KEY (`id`));
|
|
CREATE INDEX `tbl_products_index_1` ON `myems_production_db`.`tbl_products` (`name`);
|
|
|
|
-- --------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_products_shifts`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_products_shifts` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_products_shifts` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`shopfloor_id` BIGINT NOT NULL,
|
|
`team_id` BIGINT NOT NULL,
|
|
`product_id` BIGINT NOT NULL,
|
|
`product_count` INT NOT NULL,
|
|
`start_datetime_utc` DATETIME NOT NULL,
|
|
`end_datetime_utc` DATETIME NOT NULL,
|
|
`timestamp` DATETIME NOT NULL,
|
|
PRIMARY KEY (`id`));
|
|
CREATE INDEX `tbl_products_shifts_index_1` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `product_id`, `end_datetime_utc` );
|
|
CREATE INDEX `tbl_products_shifts_index_2` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `product_id`, `start_datetime_utc`, `end_datetime_utc` );
|
|
CREATE INDEX `tbl_products_shifts_index_3` ON `myems_production_db`.`tbl_products_shifts` (`line_id`, `timestamp`);
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_shopfloors_products`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloors_products` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloors_products` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`shopfloor_id` BIGINT NOT NULL,
|
|
`product_id` BIGINT NOT NULL,
|
|
PRIMARY KEY (`id`));
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_shopfloor_working_days`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloor_working_days` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_working_days` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`shopfloor_id` BIGINT NOT NULL,
|
|
`date_local` DATE NOT NULL,
|
|
PRIMARY KEY (`id`));
|
|
CREATE INDEX `tbl_shopfloor_working_days_index_1` ON `myems_production_db`.`tbl_shopfloor_working_days` (`shopfloor_id`, `date_local`);
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_shopfloor_hourly`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_shopfloor_hourly` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_shopfloor_hourly` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`shopfloor_id` BIGINT NOT NULL,
|
|
`start_datetime_utc` DATETIME NOT NULL,
|
|
`product_id` BIGINT NOT NULL,
|
|
`product_count` DECIMAL(18, 3) NOT NULL,
|
|
PRIMARY KEY (`id`));
|
|
CREATE INDEX `tbl_shopfloor_hourly_index_1` ON `myems_production_db`.`tbl_shopfloor_hourly` (`shopfloor_id`, `product_id`, `start_datetime_utc`);
|
|
|
|
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
-- Table `myems_production_db`.`tbl_teams`
|
|
-- ---------------------------------------------------------------------------------------------------------------------
|
|
DROP TABLE IF EXISTS `myems_production_db`.`tbl_teams` ;
|
|
|
|
CREATE TABLE IF NOT EXISTS `myems_production_db`.`tbl_teams` (
|
|
`id` BIGINT NOT NULL AUTO_INCREMENT,
|
|
`name` VARCHAR(128) NOT NULL,
|
|
`uuid` CHAR(36) NOT NULL,
|
|
PRIMARY KEY (`id`));
|
|
CREATE INDEX `tbl_teams_index_1` ON `myems_production_db`.`tbl_teams` (`name`);
|