--
--  mocha_instances.sql - defines the mocha_instances table
--
--  Author:
--       Michael Becker <alcexhim@gmail.com>
--
--  Copyright (c) 2021 Mike Becker's Software
--
--  This program is free software: you can redistribute it and/or modify
--  it under the terms of the GNU General Public License as published by
--  the Free Software Foundation, either version 3 of the License, or
--  (at your option) any later version.
--
--  This program is distributed in the hope that it will be useful,
--  but WITHOUT ANY WARRANTY; without even the implied warranty of
--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
--  GNU General Public License for more details.
--
--  You should have received a copy of the GNU General Public License
--  along with this program.  If not, see <http://www.gnu.org/licenses/>.

DROP TABLE IF EXISTS mocha_instances;

CREATE TABLE mocha_instances
(
    id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
    tenant_id INT,
    class_id INT,
    inst_id INT,
    global_identifier CHAR(32),
    
    INDEX `inst_index_FI_1`
        (tenant_id, class_id, inst_id),
    
    INDEX `inst_index_FI_2`
        (tenant_id, global_identifier),

    CONSTRAINT `inst_inst_id_FK_tenant`
        FOREIGN KEY (`tenant_id`)
        REFERENCES `mocha_tenants` (`id`)
);
