-- 简单文档库;MySQL 5.7,增量、可重复执行,不修改 Cloudreve 和已有表。 -- 执行前确认当前连接是目标门户数据库;所有业务删除使用 del_flag。 SET NAMES utf8mb4; CREATE TABLE IF NOT EXISTS `biz_doclib_folder` ( `id` varchar(64) NOT NULL COMMENT '主键UUID', `name` varchar(120) NOT NULL COMMENT '文件夹名称', `parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '父文件夹ID,空为根目录', `tenant_no` varchar(64) NOT NULL COMMENT '租户编号', `order_num` int DEFAULT NULL COMMENT '排序号', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `create_by` varchar(64) NOT NULL COMMENT '创建人', `create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建部门', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` smallint NOT NULL DEFAULT 0 COMMENT '删除标记', PRIMARY KEY (`id`), KEY `ix_doclib_folder_owner` (`tenant_no`,`create_by`,`parent_id`,`del_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC; CREATE TABLE IF NOT EXISTS `biz_doclib_file` ( `id` varchar(64) NOT NULL COMMENT '主键UUID', `name` varchar(255) NOT NULL COMMENT '原文件名', `folder_id` varchar(64) NOT NULL DEFAULT '' COMMENT '所属文件夹', `size` bigint NOT NULL COMMENT '字节数', `content_type` varchar(255) NOT NULL DEFAULT 'application/octet-stream' COMMENT '原始媒体类型', `object_key` varchar(512) NOT NULL COMMENT '私有对象键,不对外暴露', `tenant_no` varchar(64) NOT NULL COMMENT '租户编号', `order_num` int DEFAULT NULL COMMENT '排序号', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `create_by` varchar(64) NOT NULL COMMENT '创建人', `create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建部门', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` smallint NOT NULL DEFAULT 0 COMMENT '删除标记', PRIMARY KEY (`id`), KEY `ix_doclib_file_owner` (`tenant_no`,`create_by`,`del_flag`,`create_time`), KEY `ix_doclib_file_folder` (`tenant_no`,`folder_id`,`del_flag`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC; CREATE TABLE IF NOT EXISTS `biz_doclib_share` ( `id` varchar(64) NOT NULL COMMENT '主键UUID', `file_id` varchar(64) NOT NULL COMMENT '文档ID', `user_id` varchar(64) NOT NULL COMMENT '被分享用户ID', `tenant_no` varchar(64) NOT NULL COMMENT '租户编号', `order_num` int DEFAULT NULL COMMENT '排序号', `remark` varchar(512) DEFAULT NULL COMMENT '备注', `create_by` varchar(64) NOT NULL COMMENT '创建人', `create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建部门', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_by` varchar(64) DEFAULT NULL COMMENT '更新人', `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', `del_flag` smallint NOT NULL DEFAULT 0 COMMENT '删除标记', PRIMARY KEY (`id`), UNIQUE KEY `uk_doclib_share_user` (`tenant_no`,`file_id`,`user_id`), KEY `ix_doclib_share_recipient` (`tenant_no`,`user_id`,`del_flag`,`file_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;