对日志表进行添加日期分割

说明

由于日志内容太大,需要将xxxx1表,改名为:xxxx1_202307表,在创建xxxx1表再次作为新表

逻辑:
(1)判断改名的这张xxxx1_202307表是否存在
(2)不存在将调用xxxx1表修改为xxxx1_202307表
(3)创建xxxx1表

mapper.xml文件中如下

判断数据库表是否存在

<!--  判断数据库是否存在  -->
    <select id="selectTableByDatabaseExists" resultType="java.lang.String">
        SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME= #{tableName} ;
    </select>

修改表名为另一个表名

<update id="updateTableName">
        ALTER TABLE ${tableName} RENAME  ${tableName}_${date}
    </update>

删除表

     <!--  删除表  -->
    <update id="dropTable">
        drop table ${tableName}_${date}
    </update>

创建表例子

    <update id="createUploadDataLogTable">
        CREATE TABLE `upload_data_log` (
          `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
          `create_by` varchar(64) NOT NULL COMMENT '创建人',
          `create_date` datetime NOT NULL COMMENT '创建时间',
          `update_by` varchar(64) NOT NULL COMMENT '更新人',
          `update_date` datetime NOT NULL COMMENT '更新时间',
          PRIMARY KEY (`id`) USING BTREE
        ) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8 COMMENT='历史记录';
    </update>

猜你喜欢

转载自blog.csdn.net/Ls66666Ls/article/details/131662156