com.gitee.sunchenbin.mybatis.actable.dao.system.CreateMysqlTablesMapper Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of mybatis-enhance-actable Show documentation
Show all versions of mybatis-enhance-actable Show documentation
A.CTable is a Maven project based on Spring and Mybatis, which enhances the function of Mybatis
package com.gitee.sunchenbin.mybatis.actable.dao.system;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.gitee.sunchenbin.mybatis.actable.command.SysMysqlTable;
import com.gitee.sunchenbin.mybatis.actable.command.TableConfig;
import org.apache.ibatis.annotations.Param;
import com.gitee.sunchenbin.mybatis.actable.command.SysMysqlColumns;
/**
* 创建更新表结构的Mapper
* @author sunchenbin
*
*/
public interface CreateMysqlTablesMapper {
/**
* 根据结构注解解析出来的信息创建表
* @param tableMap 表结构的map
*/
public void createTable(@Param("tableMap") Map tableMap);
/**
* 根据表名查询表在库中是否存在
* @param tableName 表结构的map
* @return SysMysqlTable
*/
public SysMysqlTable findTableByTableName(@Param("tableName") String tableName);
/**
* 根据表名查询库中该表的字段结构等信息
* @param tableName 表结构的map
* @return 表的字段结构等信息
*/
public List findTableEnsembleByTableName(@Param("tableName") String tableName);
/**
* 增加字段
* @param tableMap 表结构的map
*/
public void addTableField(@Param("tableMap") Map tableMap);
/**
* 删除字段
* @param tableMap 表结构的map
*/
public void removeTableField(@Param("tableMap") Map tableMap);
/**
* 更新表注释
* @param tableMap 表结构的map
*/
public void modifyTableComment(@Param("tableMap") Map tableMap);
/**
* 修改字段
* @param tableMap 表结构的map
*/
public void modifyTableField(@Param("tableMap") Map tableMap);
/**
* 删除主键约束,附带修改其他字段属性功能
* @param tableMap 表结构的map
*/
public void dropKeyTableField(@Param("tableMap") Map tableMap);
/**
* 根据表名删除表
* @param tableName 表名
*/
public void dropTableByName(@Param("tableName") String tableName);
/**
* 查询当前表存在的索引(除了主键索引primary)
* @param tableName 表名
* @return 索引名列表
*/
public Set findTableIndexByTableName(@Param("tableName") String tableName);
/**
* 删除表索引
* @param tableMap
*/
public void dropTabelIndex(@Param("tableMap") Map tableMap);
/**
* 创建索引
* @param tableMap
*/
public void addTableIndex(@Param("tableMap") Map tableMap);
/**
* 创建唯一约束
* @param tableMap
*/
public void addTableUnique(@Param("tableMap") Map tableMap);
}