package com.chenyang.nse.bussiness.service.core.dataproject;

import com.chenyang.nse.bussiness.entity.db.ColumnInfo;
import com.chenyang.nse.bussiness.entity.db.ForeignKeyInfo;
import com.chenyang.nse.bussiness.entity.orm.table.core.dataproject.TableClounmInfo;
import com.chenyang.nse.bussiness.entity.orm.table.core.dataproject.TableJoinsInfo;
import java.sql.Connection;
import java.util.List;

public interface TableJoinsInfoService {
   void save(TableJoinsInfo tableJoinsInfo);

   void removeByTaskid(String taskid);

   List<TableJoinsInfo> queryAllbyTaskid(String taskid);

   void saveJoinsInfo(Connection connection, String schema, String tablename, List<ColumnInfo> columnInfoList, String taskid, List<String> tablenamelist);

   List<TableClounmInfo> queryColAllbyId(String id);

   List<TableJoinsInfo> queryAllbyTaskidAndtbName(String taskid, String tablename);

   void updateColInfo(TableClounmInfo tableClounmInfo);

   void removeTbcolumByTJid(String id);

   List<ColumnInfo> queryTbForCol(Connection connection, String schema);

   List<ForeignKeyInfo> getFkList(Connection connection, String schema, String tableName);

   void findColFK(String taskid, String tableName, List<ColumnInfo> columlist, List<ForeignKeyInfo> fkList);
}
