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

import com.chenyang.nse.bussiness.webtools.entity.db.ColumnInfo;
import com.chenyang.nse.bussiness.webtools.entity.db.IndexInfo;
import com.chenyang.nse.bussiness.webtools.entity.vo.ComboboxVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.DBTableVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.DatasystemVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.MviewVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.ProcedureVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.SequenceVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.SynonymsVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.TableVO;
import com.chenyang.nse.bussiness.webtools.entity.vo.ViewVO;
import java.sql.Connection;
import java.util.List;

public interface WebToolsDataSystemService {
   List<ComboboxVO> queryShemas(DatasystemVO datasystem) throws Exception;

   List<ComboboxVO> querySequences(DatasystemVO datasystem) throws Exception;

   List<SequenceVO> querySequenceAttr(DatasystemVO datasystem) throws Exception;

   Connection getConnectionByDataSystemId(DatasystemVO datasystem);

   List<DBTableVO> queryTablename(DatasystemVO datasystem);

   List<String> queryView(DatasystemVO datasystem);

   List<String> querySynonym(DatasystemVO datasystem);

   List<SynonymsVO> querySynonymAttr(DatasystemVO datasystem) throws Exception;

   List<ViewVO> queryViewDeclare(DatasystemVO datasystem) throws Exception;

   List<ColumnInfo> queryViewColumn(DatasystemVO datasystem) throws Exception;

   List<IndexInfo> queryTableIndex(DatasystemVO datasystem) throws Exception;

   List<MviewVO> queryMViewAttr2Declare(DatasystemVO datasystem) throws Exception;

   TableVO queryTableComment2Space(DatasystemVO datasystem) throws Exception;

   ViewVO queryViewComments(DatasystemVO datasystem) throws Exception;

   List<String> queryProcedures(DatasystemVO datasystem);

   List<String> queryFunctions(DatasystemVO datasystem);

   List<String> queryMviewList(DatasystemVO datasystem);

   ProcedureVO queryProcedureAttr2Declare(DatasystemVO datasystem) throws Exception;

   ProcedureVO queryFunctionAttr2Declare(DatasystemVO datasystem) throws Exception;
}
