/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getTableScript(com.hangum.tadpole.dao.mysql.TableDAO) */ @Override public String getTableScript(TableDAO tableDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); Map srcList = (HashMap) client.queryForObject("getTableScript", tableDAO.getName()); return "" + srcList.get("Create Table"); }
/** * 데이터 수정. * * @param userDB * @param title * @param desc * @param cronExp * @param listSchedule * @return * @throws Exception */ public static ScheduleMainDAO modifySchedule( final UserDBDAO userDB, ScheduleMainDAO scheduleDao, List<ScheduleDAO> listSchedule) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); sqlClient.update("scheduleMainUpdate", scheduleDao); // 기존 데이터를 삭제합니다. sqlClient.update("deleteSchedule", scheduleDao.getSeq()); // save schedule for (ScheduleDAO scheduleDAO : listSchedule) { scheduleDAO.setSchedule_main_seq(scheduleDao.getSeq()); ScheduleDAO retScheduleDAO = (ScheduleDAO) sqlClient.insert("scheduleInsert", scheduleDAO); // sql String[] sqls = SQLUtil.makeResourceDataArays(scheduleDAO.getSql()); ScheduleDetailDAO detailDao = null; for (String sql : sqls) { detailDao = new ScheduleDetailDAO(); detailDao.setSchedule_seq(retScheduleDAO.getSeq()); detailDao.setDatas(sql); sqlClient.insert("scheduleDetailInsert", detailDao); } } return scheduleDao; }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getProcedureScript(com.hangum.tadpole.dao.mysql.ProcedureFunctionDAO) */ @Override public String getProcedureScript(ProcedureFunctionDAO procedureDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); Map srcList = (HashMap) client.queryForObject("getProcedureScript", procedureDAO.getName()); String strSource = "" + srcList.get("Create Procedure"); strSource = StringUtils.substringAfterLast(strSource, "PROCEDURE"); return "CREATE PROCEDURE " + strSource; }
/** * schedule result * * @param seq * @param isResult * @param msg */ public static void saveScheduleResult(int seq, boolean isResult, String msg) throws Exception { ScheduleResultDAO dao = new ScheduleResultDAO(); dao.setSchedule_main_seq(seq); dao.setResult( isResult ? PublicTadpoleDefine.YES_NO.YES.name() : PublicTadpoleDefine.YES_NO.NO.name()); dao.setDescription(msg); SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); sqlClient.insert("scheduleResultInsert", dao); }
/** * sequenc * * @param dao * @return * @throws TadpoleSQLManagerException, SQLException */ public static TadpoleSequenceDAO getSequence(TadpoleSequenceDAO dao) throws TadpoleSQLManagerException, SQLException { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); dao = (TadpoleSequenceDAO) sqlClient.queryForObject("lastSequene", dao); dao.setNo(dao.getNo() + 1); sqlClient.update("updateSequence", dao); return dao; }
/** * 마지막 실행했떤 쿼리 100개를 리턴합니다. * * @param user_seq * @param dbSeq * @return * @throws Exception */ public static List<SQLHistoryDAO> getExecuteQueryHistory(int user_seq, int dbSeq, String filter) throws Exception { List<SQLHistoryDAO> returnSQLHistory = new ArrayList<SQLHistoryDAO>(); Map<String, Object> queryMap = new HashMap<String, Object>(); queryMap.put("user_seq", user_seq); queryMap.put("db_seq", dbSeq); queryMap.put("filter", "%" + filter + "%"); queryMap.put("count", 50); SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); List<java.util.Map> listResourceData = sqlClient.queryForList("getExecuteQueryHistory", queryMap); for (Map resultMap : listResourceData) { int seq = (Integer) resultMap.get("executed_sql_resource_seq"); Long startdateexecute = 0l; // This case sqlite if (resultMap.get("startdateexecute") instanceof Long) { startdateexecute = (Long) resultMap.get("startdateexecute"); // This case mysql } else { startdateexecute = ((Timestamp) resultMap.get("startdateexecute")).getTime(); } String strSQLText = (String) resultMap.get("datas"); Long enddateexecute = 0l; // This case sqlite if (resultMap.get("enddateexecute") instanceof Long) { enddateexecute = (Long) resultMap.get("enddateexecute"); // This case mysql } else { enddateexecute = ((Timestamp) resultMap.get("enddateexecute")).getTime(); } String strMessage = (String) resultMap.get("message"); int row = (Integer) resultMap.get("row"); String result = (String) resultMap.get("result"); SQLHistoryDAO dao = new SQLHistoryDAO( new Timestamp(startdateexecute), strSQLText, new Timestamp(enddateexecute), row, result, strMessage); dao.setSeq(seq); returnSQLHistory.add(dao); } return returnSQLHistory; }
/** * table의 컬럼 정보를 가져옵니다. * * @param strTBName * @return * @throws Exception */ public List<TableColumnDAO> getColumns(String strTBName) throws Exception { Map<String, String> param = new HashMap<String, String>(); param.put("db", userDB.getDb()); // $NON-NLS-1$ param.put("table", strTBName); // $NON-NLS-1$ if (userDB.getDBDefine() == DBDefine.TAJO_DEFAULT) { return new TajoConnectionManager().tableColumnList(userDB, param); } else { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(userDB); return sqlClient.queryForList("tableColumnList", param); // $NON-NLS-1$ } }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getViewScript(java.lang.String) */ @Override public String getViewScript(String strName) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); Map srcList = (HashMap) client.queryForObject("getViewScript", strName); String strSource = "" + srcList.get("Create View"); strSource = StringUtils.substringAfterLast(strSource, "VIEW"); return "CREATE VIEW " + strSource; }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getFunctionScript(com.hangum.tadpole.dao.mysql.ProcedureFunctionDAO) */ @Override public String getFunctionScript(ProcedureFunctionDAO functionDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); Map srcList = (HashMap) client.queryForObject("getFunctionScript", functionDAO.getName()); String strSource = "" + srcList.get("Create Function"); strSource = StringUtils.substringAfterLast(strSource, "FUNCTION"); return "CREATE FUNCTION " + strSource; }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getTriggerScript(com.hangum.tadpole.dao.mysql.TriggerDAO) */ @Override public String getTriggerScript(TriggerDAO triggerDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); Map srcList = (HashMap) client.queryForObject("getTriggerScript", triggerDAO.getTrigger()); String strSource = "" + srcList.get("SQL Original Statement"); strSource = StringUtils.substringAfterLast(strSource, "TRIGGER"); return "CREATE TRIGGER " + strSource; }
/** * resource data * * @param userDBResource * @param contents * @throws Exception */ private static void insertResourceData(ExecutedSqlResourceDAO userDBResource, String contents) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); // content data를 저장합니다. ExecutedSqlResourceDataDAO dataDao = new ExecutedSqlResourceDataDAO(); dataDao.setExecuted_sql_resource_seq(userDBResource.getSeq()); String[] arrayContent = SQLUtil.makeResourceDataArays(contents); for (String content : arrayContent) { dataDao.setDatas(content); sqlClient.insert("userExecuteSQLResourceDataInsert", dataDao); // $NON-NLS-1$ } }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getViewScript(java.lang.String) */ @Override public String getViewScript(String strName) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); result.append("/* DROP VIEW " + strName + "; */ \n\n"); List<String> srcProcList = client.queryForList("getViewScript", strName); for (int i = 0; i < srcProcList.size(); i++) { result.append(srcProcList.get(i)); } return result.toString(); }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getTriggerScript(com.hangum.tadpole.dao.mysql.TriggerDAO) */ @Override public String getTriggerScript(TriggerDAO triggerDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); result.append("/* DROP PROCEDURE " + triggerDAO.getName() + "; */ \n\n"); List<String> srcProcList = client.queryForList("getTriggerScript", triggerDAO.getName()); for (int i = 0; i < srcProcList.size(); i++) { result.append(srcProcList.get(i)); } return result.toString(); }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getFunctionScript(com.hangum.tadpole.dao.mysql.ProcedureFunctionDAO) */ @Override public String getFunctionScript(ProcedureFunctionDAO functionDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); result.append("/* DROP FUNCTION " + functionDAO.getName() + "; */ \n\n"); List<String> srcProcList = client.queryForList("getFunctionScript", functionDAO.getName()); for (int i = 0; i < srcProcList.size(); i++) { result.append(srcProcList.get(i)); } return result.toString(); }
/** * seq * * @param seq {@link ScheduleDAO#getSeq()} * @return * @throws Exception */ public static List<ScheduleDAO> findSchedule(final int seq) throws Exception { List<ScheduleDAO> listSchedule = new ArrayList<ScheduleDAO>(); SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); listSchedule = sqlClient.queryForList("getSchedule", seq); for (ScheduleDAO scheduleDAO : listSchedule) { List<ScheduleDetailDAO> listDetail = sqlClient.queryForList("getScheduleDetail", scheduleDAO.getSeq()); StringBuffer sbSQL = new StringBuffer(); for (ScheduleDetailDAO scheduleDetailDAO : listDetail) { sbSQL.append(scheduleDetailDAO.getDatas()); } scheduleDAO.setSql(sbSQL.toString()); } return listSchedule; }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getProcedureScript(com.hangum.tadpole.dao.mysql.ProcedureFunctionDAO) */ @Override public String getProcedureScript(ProcedureFunctionDAO procedureDAO) throws Exception { try { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); StringBuilder result = new StringBuilder(""); result.append("/* DROP PROCEDURE '" + procedureDAO.getName() + "'; */ \n\n"); List<String> srcProcList = client.queryForList("getProcedureScript", procedureDAO.getName()); for (int i = 0; i < srcProcList.size(); i++) { result.append(srcProcList.get(i)); } return result.toString(); } catch (Exception e) { logger.error("get view script [" + procedureDAO.getName() + "]", e); throw e; } }
private void initUI() { try { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(userDB); List listTableInform = sqlClient.queryForList("tableInformation", userDB.getDb()); // $NON-NLS-1$ tvTableInform.setInput(listTableInform); tvTableInform.refresh(); } catch (Exception e) { logger.error("initialize session list", e); // $NON-NLS-1$ Status errStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); // $NON-NLS-1$ ExceptionDetailsErrorDialog.openError( null, "Error", Messages.MainEditor_19, errStatus); // $NON-NLS-1$ } // google analytic AnalyticCaller.track(RDBDBInfosEditor.ID, "TablesComposite"); // $NON-NLS-1$ }
/** * Is executed procedure? * * @param procedureDAO * @param useDB * @return */ public boolean isExecuted(ProcedureFunctionDAO procedureDAO, UserDBDAO selectUseDB) { if (!isSupport()) { MessageDialog.openError(null, "Error", "Not Support database"); return false; } if (!procedureDAO.isValid()) { MessageDialog.openError(null, "Error", "Not valid this procedure."); return false; } if (DBDefine.getDBDefine(userDB) == DBDefine.MYSQL_DEFAULT) { double dbVersion = 0.0; try { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(userDB); DBInfoDAO dbInfo = (DBInfoDAO) sqlClient.queryForObject("findDBInfo"); // $NON-NLS-1$ dbVersion = Double.parseDouble(StringUtils.substring(dbInfo.getProductversion(), 0, 3)); if (dbVersion < 5.5) { MessageDialog.openError( null, "Error", "The current version does not support.\n\n5.5 or later is supported."); return false; } } catch (Exception e) { logger.error("find DB info", e); return false; } } try { ProcedureExecutor procedureExecutor = getExecuter(); procedureExecutor.getInParameters(); } catch (Exception e) { MessageDialog.openError(null, "Error", e.getMessage()); return false; } return true; }
/** * @param userDB * @param title * @param desc * @param cronExp * @param listSchedule */ public static ScheduleMainDAO addSchedule( final UserDBDAO userDB, String title, String desc, String cronExp, List<ScheduleDAO> listSchedule) throws Exception { int userSeq = SessionManager.getUserSeq(); ScheduleMainDAO dao = new ScheduleMainDAO(); dao.setSeq(userSeq); dao.setUser_seq(SessionManager.getUserSeq()); dao.setDb_seq(userDB.getSeq()); dao.setTitle(title); dao.setDescription(desc); dao.setCron_exp(cronExp); SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); dao = (ScheduleMainDAO) sqlClient.insert("scheduleMainInsert", dao); // save schedule for (ScheduleDAO scheduleDAO : listSchedule) { scheduleDAO.setSchedule_main_seq(dao.getSeq()); ScheduleDAO retScheduleDAO = (ScheduleDAO) sqlClient.insert("scheduleInsert", scheduleDAO); // sql String[] sqls = SQLUtil.makeResourceDataArays(scheduleDAO.getSql()); ScheduleDetailDAO detailDao = null; for (String sql : sqls) { detailDao = new ScheduleDetailDAO(); detailDao.setSchedule_seq(retScheduleDAO.getSeq()); detailDao.setDatas(sql); sqlClient.insert("scheduleDetailInsert", detailDao); } } return dao; }
/** * get db collation * * @param userDB * @return */ public static String[] getCollation(UserDBDAO userDB) { String strSQL = "SHOW COLLATION"; ResultSet resultSet = null; java.sql.Connection javaConn = null; Statement statement = null; List<String> listCollation = new ArrayList<String>(); try { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); javaConn = client.getDataSource().getConnection(); statement = javaConn.createStatement(); resultSet = statement.executeQuery(strSQL); while (resultSet.next()) listCollation.add(resultSet.getString("Collation")); } catch (Exception e) { logger.error("mysql collatioon", e); } finally { if (resultSet != null) try { resultSet.close(); } catch (Exception e) { } if (statement != null) try { statement.close(); } catch (Exception e) { } if (javaConn != null) try { javaConn.close(); } catch (Exception e) { } } return listCollation.toArray(new String[listCollation.size()]); }
/** * save sqlhistory * * @param user_seq * @param userDB * @param sqlType * @param sqlHistoryDAO */ public static void saveExecuteSQUeryResource( int user_seq, UserDBDAO userDB, PublicTadpoleDefine.EXECUTE_SQL_TYPE sqlType, SQLHistoryDAO sqlHistoryDAO) throws Exception { if (PublicTadpoleDefine.YES_NO.YES.name().equals(userDB.getIs_profile())) { ExecutedSqlResourceDAO executeSQLResourceDao = new ExecutedSqlResourceDAO(); executeSQLResourceDao.setDb_seq(userDB.getSeq()); executeSQLResourceDao.setUser_seq(user_seq); executeSQLResourceDao.setTypes(sqlType.toString()); executeSQLResourceDao.setStartDateExecute(sqlHistoryDAO.getStartDateExecute()); executeSQLResourceDao.setEndDateExecute(sqlHistoryDAO.getEndDateExecute()); long duration = sqlHistoryDAO.getEndDateExecute().getTime() - sqlHistoryDAO.getStartDateExecute().getTime(); executeSQLResourceDao.setDuration(Integer.parseInt("" + duration)); executeSQLResourceDao.setRow(sqlHistoryDAO.getRows()); executeSQLResourceDao.setResult(sqlHistoryDAO.getResult()); executeSQLResourceDao.setMessage( sqlHistoryDAO .getMesssage()); // ""+(sqlHistoryDAO.getEndDateExecute().getTime() - // sqlHistoryDAO.getStartDateExecute().getTime())); executeSQLResourceDao.setIpAddress(sqlHistoryDAO.getIpAddress()); // 기존에 등록 되어 있는지 검사한다 SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); ExecutedSqlResourceDAO executeSQL = (ExecutedSqlResourceDAO) sqlClient.insert( "userExecuteSQLResourceInsert", executeSQLResourceDao); // $NON-NLS-1$ insertResourceData(executeSQL, sqlHistoryDAO.getStrSQLText()); } }
@Override public List<InOutParameterDAO> getProcedureOutParamter(ProcedureFunctionDAO procedureDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); return client.queryForList("getProcedureOutParamter", procedureDAO.getName()); }
/** * 쿼리 실행 히스토리 디테일 창을 얻습니다. * * @param strType * @param dbSeq * @param executeTime * @param durationLimit * @return * @throws Exception */ public static List<SQLHistoryDAO> getExecuteQueryHistoryDetail( String strType, String dbSeq, long startTime, long endTime, int duringExecute, String strSearch) throws Exception { List<SQLHistoryDAO> returnSQLHistory = new ArrayList<SQLHistoryDAO>(); Map<String, Object> queryMap = new HashMap<String, Object>(); queryMap.put("db_seq", dbSeq); queryMap.put("type", strType); if (ApplicationArgumentUtils.isDBServer()) { Date date = new Date(startTime); DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS"); queryMap.put("startTime", formatter.format(date)); Date dateendTime = new Date(endTime); queryMap.put("endTime", formatter.format(dateendTime)); } else { queryMap.put("startTime", startTime); queryMap.put("endTime", endTime); } queryMap.put("duration", duringExecute); queryMap.put("count", 1000); queryMap.put("strSearch", strSearch); SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); List<java.util.Map> listResourceData = new ArrayList<Map>(); if (PublicTadpoleDefine.EXECUTE_SQL_TYPE.API.name().endsWith(strType)) { listResourceData = sqlClient.queryForList("getExecuteQueryHistoryAPIDetail", queryMap); } else { listResourceData = sqlClient.queryForList("getExecuteQueryHistoryDetail", queryMap); } for (Map resultMap : listResourceData) { int seq = (Integer) resultMap.get("executed_sql_resource_seq"); Long startdateexecute = 0l; String strSQLText = (String) resultMap.get("datas"); Long enddateexecute = 0l; if (ApplicationArgumentUtils.isDBServer()) { startdateexecute = ((Timestamp) resultMap.get("startdateexecute")).getTime(); enddateexecute = ((Timestamp) resultMap.get("enddateexecute")).getTime(); } else { startdateexecute = (Long) resultMap.get("startdateexecute"); enddateexecute = (Long) resultMap.get("enddateexecute"); } int row = (Integer) resultMap.get("row"); String result = (String) resultMap.get("result"); String userName = resultMap.get("name") == null ? "" : (String) resultMap.get("name"); String dbName = (String) resultMap.get("display_name"); String ipAddress = (String) resultMap.get("ipaddress"); int dbSeq2 = (Integer) resultMap.get("dbseq"); String strMessage = (String) resultMap.get("message"); SQLHistoryDAO dao = new SQLHistoryDAO( userName, dbName, new Timestamp(startdateexecute), strSQLText, new Timestamp(enddateexecute), row, result, strMessage, ipAddress, dbSeq2); dao.setSeq(seq); if (PublicTadpoleDefine.EXECUTE_SQL_TYPE.API.name().endsWith(strType)) { dao.setEXECUSTE_SQL_TYPE(PublicTadpoleDefine.EXECUTE_SQL_TYPE.API); } else { dao.setEXECUSTE_SQL_TYPE(PublicTadpoleDefine.EXECUTE_SQL_TYPE.EDITOR); } returnSQLHistory.add(dao); } return returnSQLHistory; }
@Override public void run(IStructuredSelection selection, UserDBDAO userDB, OBJECT_TYPE actionType) { try { PublicTadpoleDefine.QUERY_DML_TYPE queryType = QUERY_DML_TYPE.INSERT; if (queryType == QUERY_DML_TYPE.INSERT) { if (PublicTadpoleDefine.YES_NO .YES .name() .equals(userDB.getDbAccessCtl().getInsert_lock())) { throw new Exception(Messages.get().MainEditor_21); } } queryType = QUERY_DML_TYPE.UPDATE; if (queryType == QUERY_DML_TYPE.UPDATE) { if (PublicTadpoleDefine.YES_NO .YES .name() .equals(userDB.getDbAccessCtl().getUpdate_lock())) { throw new Exception(Messages.get().MainEditor_21); } } queryType = QUERY_DML_TYPE.DELETE; if (queryType == QUERY_DML_TYPE.DELETE) { if (PublicTadpoleDefine.YES_NO .YES .name() .equals(userDB.getDbAccessCtl().getDelete_locl())) { throw new Exception(Messages.get().MainEditor_21); } } } catch (Exception e) { MessageDialog.openError( getWindow().getShell(), Messages.get().ObjectDeleteAction_2, e.getMessage()); return; } try { if (!GrantCheckerUtils.ifExecuteQuery(userDB)) return; } catch (Exception e) { MessageDialog.openError( getWindow().getShell(), Messages.get().ObjectDeleteAction_2, e.getMessage()); return; } TableDAO tableDAO = (TableDAO) selection.getFirstElement(); try { // get the table columns SqlMapClient sqlClient = TadpoleSQLManager.getInstance(userDB); Map<String, String> mapParam = new HashMap<String, String>(); mapParam.put("db", userDB.getDb()); // $NON-NLS-1$ mapParam.put("table", tableDAO.getName()); // $NON-NLS-1$ List showTableColumns = sqlClient.queryForList("tableColumnList", mapParam); // $NON-NLS-1$ // Open the table director editor IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); DBTableEditorInput dbEditorInput = new DBTableEditorInput(tableDAO, userDB, showTableColumns); page.openEditor(dbEditorInput, TableInformationEditor.ID, false); } catch (Exception e) { logger.error("Load the table data", e); // $NON-NLS-1$ Status errStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(), e); // $NON-NLS-1$ ExceptionDetailsErrorDialog.openError( null, "Error", Messages.get().ExplorerViewer_39, errStatus); // $NON-NLS-1$ } }
/** * 보여 주어야할 목록을 정의합니다. * * @param userDB * @return * @throws Exception */ public static List<OracleSynonymDAO> getSynonymList(final UserDBDAO userDB) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(userDB); return sqlClient.queryForList("synonymList", userDB.getDb()); // $NON-NLS-1$ }
/** * find schedule main * * @param seq {@link ScheduleMainDAO#getSeq()} * @return * @throws Exception */ public static ScheduleMainDAO findScheduleMain(final int seq) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); return (ScheduleMainDAO) sqlClient.queryForObject("getScheduleMain", seq); }
/** * get result * * @param seq * @return * @throws Exception */ public static List<ScheduleResultDAO> getScheduleResult(int seq) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); return sqlClient.queryForList("getScheduleResult", seq); }
/** * find user schedule * * @return * @throws Exception */ public static List<ScheduleMainDAO> findUserScheduleMain() throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); return sqlClient.queryForList("getUserScheduleMain", SessionManager.getUserSeq()); }
/* (non-Javadoc) * @see com.hangum.tadpole.rdb.core.editors.objects.table.scripts.RDBDDLScript#getTableScript(com.hangum.tadpole.dao.mysql.TableDAO) */ @Override public String getTableScript(TableDAO tableDAO) throws Exception { SqlMapClient client = TadpoleSQLManager.getInstance(userDB); List<HashMap> srcList = client.queryForList("getTableScript", tableDAO.getName()); StringBuilder result = new StringBuilder(""); result.append("/* DROP TABLE " + tableDAO.getName() + " CASCADE CONSTRAINT; */ \n\n"); result.append("CREATE TABLE " + tableDAO.getName() + "( \n"); for (int i = 0; i < srcList.size(); i++) { HashMap<String, Object> source = srcList.get(i); result.append("\t"); if (i > 0) result.append(","); result.append(source.get("COLUMN_NAME")).append(" "); result.append(source.get("DATA_TYPE")); if (source.get("DATA_PRECISION") != null && ((Integer) source.get("DATA_PRECISION")).intValue() > 0) { result.append("(" + source.get("DATA_PRECISION")); if (source.get("DATA_SCALE") != null && ((Integer) source.get("DATA_SCALE")).intValue() > 0) { result.append("," + source.get("DATA_SCALE")); } result.append(")"); } else if (!StringUtils.contains((String) source.get("DATA_TYPE"), "DATE") && !StringUtils.contains((String) source.get("DATA_TYPE"), "NUMBER") && ((Integer) source.get("DATA_LENGTH")).intValue() > 0) { result.append("(" + source.get("DATA_LENGTH") + ")"); } else { result.append(" "); } if (source.get("DATA_DEFAULT") != null) { if (StringUtils.contains((String) source.get("DATA_TYPE"), "CHAR")) { result.append(" DEFAULT '" + (String) source.get("DATA_DEFAULT") + "'"); } else { result.append(" DEFAULT " + (String) source.get("DATA_DEFAULT")); } } if ("NO".equals(source.get("NULLABLE"))) { result.append(" NOT NULL "); } result.append("\n"); } // primary key List<HashMap> srcPkList = client.queryForList("getTableScript.pk", tableDAO.getName()); for (int i = 0; i < srcPkList.size(); i++) { HashMap<String, Object> source = srcPkList.get(i); if (i == 0) { result .append("\t,CONSTRAINT ") .append(source.get("CONSTRAINT_NAME")) .append(" PRIMARY KEY "); if ("CLUSTERED".equals(source.get("INDEX_TYPE"))) { result.append(" CLUSTERED "); } result.append(" ( ").append(source.get("COLUMN_NAME")); if ((Boolean) source.get("DESCENDING")) { result.append(" DESC "); } } else { result.append(", " + source.get("COLUMN_NAME")); if ((Boolean) source.get("DESCENDING")) { result.append(" DESC "); } } if (i == srcPkList.size() - 1) { result.append(") \n"); } } result.append("); \n\n"); // table, column comments List<String> srcCommentList = client.queryForList("getTableScript.comments", tableDAO.getName()); for (int i = 0; i < srcCommentList.size(); i++) { result.append(srcCommentList.get(i) + "\n"); } // foreign key // column constraint (사용자 정의 컬럼 제약조건) // partition table define // storage option // iot_type table define // table grant // table trigger // table synonyms return result.toString(); }
/** * delete schedule * * @param seq * @throws Exception */ public static void deleteSchedule(int seq) throws Exception { SqlMapClient sqlClient = TadpoleSQLManager.getInstance(TadpoleSystemInitializer.getUserDB()); sqlClient.update("deleteScheduleMain", seq); }