CREATE TABLE `files` ( `upload_name` varbinary(255) DEFAULT NULL, `storage_name` varbinary(255) DEFAULT NULL, `backup_name` varbinary(255) DEFAULT NULL, `file_type` tinyint(3) unsigned DEFAULT NULL, `status` tinyint(3) unsigned DEFAULT NULL, `sha1` varbinary(40) DEFAULT NULL, `size` int(11) DEFAULT NULL, `upload_timestamp` timestamp NULL DEFAULT NULL, `archived_timestamp` timestamp NULL DEFAULT NULL, `deleted_timestamp` timestamp NULL DEFAULT NULL, KEY `sha1` (`sha1`), KEY `file_type` (`file_type`), KEY `status` (`status`), CONSTRAINT `files_ibfk_1` FOREIGN KEY (`file_type`) REFERENCES `file_types` (`id`), CONSTRAINT `files_ibfk_2` FOREIGN KEY (`status`) REFERENCES `file_status` (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=binary CREATE TABLE new_backup_files ( -- Similar structure as files ); CREATE TABLE `file_status` ( `id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, `status_name` varbinary(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=binary CREATE TABLE `file_types` ( `id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT, `Type_name` varbinary(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=binary INSERT INTO `file_status` VALUES (1,'public'),(2,'archived'),(3,'deleted'),(4,'hard-deleted'); INSERT INTO `file_types` VALUES (0,'ERROR'),(1,'UNKNOWN'),(2,'BITMAP'),(3,'DRAWING'),(4,'AUDIO'),(5,'VIDEO'),(6,'MULTIMEDIA'),(7,'OFFICE'),(8,'TEXT'),(9,'EXECUTABLE'),(10,'ARCHIVE'),(11,'3D');