Created
March 20, 2018 15:32
-
-
Save ilhamarrouf/f983050cdcd29a513b307214fea7a672 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- MySQL Script generated by MySQL Workbench | |
-- Sat Feb 3 14:56:59 2018 | |
-- Model: New Model Version: 1.0 | |
-- MySQL Workbench Forward Engineering | |
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; | |
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; | |
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; | |
-- ----------------------------------------------------- | |
-- Schema messenger | |
-- ----------------------------------------------------- | |
DROP SCHEMA IF EXISTS `messenger` ; | |
-- ----------------------------------------------------- | |
-- Schema messenger | |
-- ----------------------------------------------------- | |
CREATE SCHEMA IF NOT EXISTS `messenger` DEFAULT CHARACTER SET utf8 ; | |
SHOW WARNINGS; | |
USE `messenger` ; | |
-- ----------------------------------------------------- | |
-- Table `users` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `users` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `users` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`phone` VARCHAR(16) NOT NULL, | |
`email` VARCHAR(255) NOT NULL, | |
`password` VARCHAR(40) NULL, | |
`first_name` VARCHAR(20) NULL, | |
`last_name` VARCHAR(20) NULL, | |
`middle_name` VARCHAR(20) NULL, | |
`verification_code` CHAR(6) NULL, | |
`is_active` TINYINT(1) NULL DEFAULT 0, | |
`is_reported` TINYINT(1) NULL DEFAULT 0, | |
`is_blocked` TINYINT(1) NULL DEFAULT 0, | |
`created_at` DATETIME NULL, | |
`updated_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
CREATE UNIQUE INDEX `phone_UNIQUE` ON `users` (`phone` ASC); | |
SHOW WARNINGS; | |
CREATE UNIQUE INDEX `email_UNIQUE` ON `users` (`email` ASC); | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `contacts` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `contacts` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `contacts` ( | |
`id` INT NOT NULL AUTO_INCREMENT COMMENT 'Sync the contacts to this table', | |
`first_name` VARCHAR(20) NULL, | |
`middle_name` VARCHAR(20) NULL, | |
`last_name` VARCHAR(20) NULL, | |
`phone` VARCHAR(14) NOT NULL, | |
`email` VARCHAR(255) NOT NULL, | |
`created_at` VARCHAR(45) NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `conversation` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `conversation` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `conversation` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`title` VARCHAR(40) NULL, | |
`creator_id` INT NOT NULL, | |
`channel_id` VARCHAR(45) NULL, | |
`created_at` DATETIME NULL, | |
`updated_at` DATETIME NULL, | |
`deleted_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `messages` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `messages` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `messages` ( | |
`id` INT NOT NULL, | |
`conversation_id` INT NOT NULL, | |
`sender_id` INT NOT NULL, | |
`message_type` ENUM('text', 'image', 'vedio', 'audio') NULL, | |
`message` VARCHAR(255) NULL, | |
`attachment_thumb_url` VARCHAR(255) NULL, | |
`attachment_url` VARCHAR(255) NULL, | |
`created_at` DATETIME NULL, | |
`guid` VARCHAR(100) NULL, | |
`deleted_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `participants` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `participants` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `participants` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`conversation_id` INT NOT NULL, | |
`users_id` INT NOT NULL, | |
`type` ENUM('single', 'group') NOT NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `reports` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `reports` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `reports` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`users_id` INT NOT NULL, | |
`participants_id` INT NOT NULL, | |
`report_type` VARCHAR(45) NULL, | |
`notes` TEXT NULL, | |
`created_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `block_list` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `block_list` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `block_list` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`users_id` INT NOT NULL, | |
`participants_id` INT NOT NULL, | |
`created_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `deleted_conversations` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `deleted_conversations` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `deleted_conversations` ( | |
`id` INT NOT NULL, | |
`conversation_id` INT NOT NULL, | |
`users_id` INT NOT NULL, | |
`created_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `devices` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `devices` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `devices` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`users_id` INT NOT NULL, | |
`device_id` VARCHAR(120) NULL, | |
`type` ENUM('APPLE') NULL, | |
`device_token` VARCHAR(120) NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `access` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `access` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `access` ( | |
`id` INT NOT NULL, | |
`users_id` INT NOT NULL, | |
`token` VARCHAR(60) NULL, | |
`created_at` DATETIME NULL, | |
`deleted_at` DATETIME NULL, | |
`devices_id` INT NOT NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `deleted_messages` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `deleted_messages` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `deleted_messages` ( | |
`id` INT NOT NULL AUTO_INCREMENT, | |
`messages_id` INT NOT NULL, | |
`users_id` INT NOT NULL, | |
`created_at` DATETIME NULL, | |
PRIMARY KEY (`id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
-- ----------------------------------------------------- | |
-- Table `user_contact` | |
-- ----------------------------------------------------- | |
DROP TABLE IF EXISTS `user_contact` ; | |
SHOW WARNINGS; | |
CREATE TABLE IF NOT EXISTS `user_contact` ( | |
`user_id` INT NOT NULL, | |
`contact_id` INT NOT NULL, | |
`first_name` VARCHAR(45) NULL, | |
`last_name` VARCHAR(45) NULL, | |
`created_at` DATETIME NULL, | |
`updated_at` DATETIME NULL, | |
PRIMARY KEY (`contact_id`, `user_id`)) | |
ENGINE = InnoDB; | |
SHOW WARNINGS; | |
SET SQL_MODE=@OLD_SQL_MODE; | |
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; | |
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment