Skip to content

Commit

Permalink
code refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
hangum committed Nov 14, 2015
1 parent 3f91938 commit 28b9a94
Show file tree
Hide file tree
Showing 4 changed files with 69 additions and 72 deletions.
Expand Up @@ -448,4 +448,36 @@ public static PublicTadpoleDefine.QUERY_DML_TYPE sqlQueryType(String sql) {
return queryType;
}

// /**
// * <pre>
// * 이런식의 쿼리가 넘어 올때 "ALTER TABLE %s COMMENT %s", dao.getSysName(), dao.getComment()"가 입력 값일 경
// * ALTER TABLE 'dao.getSysName()' COMMENT 'dao.getComment()'
// * 로 바꾸어줍니다.
// * </pre>
// *
// * @param strings
// * @return
// */
// public static String makeQuery(String ...strings) {
// String sql = strings[0];
//
// String[] strParam = new String[strings.length-1];
// for(int i=1; i<strings.length; i++) {
// strParam[i-1] = makeQuote(strings[i]);
// }
//
// return String.format(sql, strParam);
// }
/**
* make quote mark
*
* @param value
* @return
*/
public static String makeQuote(String value) {
value = StringUtils.replace(value, "'", "''");

return "'" + value + "'";
}

}
Expand Up @@ -59,6 +59,7 @@
import com.hangum.tadpole.engine.query.dao.mysql.TableColumnDAO;
import com.hangum.tadpole.engine.query.dao.mysql.TableDAO;
import com.hangum.tadpole.engine.query.dao.system.UserDBDAO;
import com.hangum.tadpole.engine.sql.util.SQLUtil;
import com.hangum.tadpole.engine.sql.util.resultset.ResultSetUtils;
import com.hangum.tadpole.engine.sql.util.sqlscripts.DDLScriptManager;
import com.hangum.tadpole.engine.sql.util.tables.SQLResultContentProvider;
Expand Down Expand Up @@ -720,13 +721,13 @@ private String getWhereMake(int rowSeq, Map<Integer, Object> tmpRs) {
if(!primaryKeyListIndex.isEmpty()) {
for(int i=0; i<primaryKeyListIndex.size(); i++) {
int keyIndex = primaryKeyListIndex.get(i);
strWhere += primaryKEYIntStrList.get(keyIndex) + " = " + makeDoubleQuote(TbUtils.getOriginalData(orgRs.get(keyIndex+1).toString())); //$NON-NLS-1$ //$NON-NLS-2$
strWhere += primaryKEYIntStrList.get(keyIndex) + " = " + SQLUtil.makeQuote(TbUtils.getOriginalData(orgRs.get(keyIndex+1).toString())); //$NON-NLS-1$ //$NON-NLS-2$

if(i < (primaryKeyListIndex.size()-1)) strWhere += " AND "; //$NON-NLS-1$
}
} else {
for(int i=1; i<tmpRs.size(); i++) {
strWhere += mapColumns.get(i-1) + " = " + makeDoubleQuote(TbUtils.getOriginalData(orgRs.get(i).toString()) ); //$NON-NLS-1$ //$NON-NLS-2$
strWhere += mapColumns.get(i-1) + " = " + SQLUtil.makeQuote(TbUtils.getOriginalData(orgRs.get(i).toString()) ); //$NON-NLS-1$ //$NON-NLS-2$

if(i < (tmpRs.size()-1)) strWhere += " AND "; //$NON-NLS-1$
}
Expand Down Expand Up @@ -768,7 +769,7 @@ private String makeUpdate(int rowSeq, Map<Integer, Object> tmpRs) {
// 0 번째 컬럼은 데이터 수정 유무이므로 .
for(int i=1; i<tmpRs.size(); i++) {
if(TbUtils.isModifyData( tmpRs.get(i).toString() )) {
updateStmt += mapColumns.get(i-1) + " = " + makeDoubleQuote(TbUtils.getOriginalData(tmpRs.get(i).toString())) + ", "; //$NON-NLS-1$ //$NON-NLS-2$
updateStmt += mapColumns.get(i-1) + " = " + SQLUtil.makeQuote(TbUtils.getOriginalData(tmpRs.get(i).toString())) + ", "; //$NON-NLS-1$ //$NON-NLS-2$
}
}
updateStmt = StringUtils.chompLast(updateStmt, ", "); //$NON-NLS-1$
Expand Down Expand Up @@ -807,24 +808,13 @@ private String makeInsert(Map<Integer, Object> tmpRs) {

// 수정된 값을 입력한다.
for(int i=1; i<tmpRs.size(); i++) {
if(TbUtils.isModifyData( tmpRs.get(i).toString() )) insertStmt += makeDoubleQuote(TbUtils.getOriginalData(tmpRs.get(i).toString())) + ", "; //$NON-NLS-1$ //$NON-NLS-2$
if(TbUtils.isModifyData( tmpRs.get(i).toString() )) insertStmt += SQLUtil.makeQuote(TbUtils.getOriginalData(tmpRs.get(i).toString())) + ", "; //$NON-NLS-1$ //$NON-NLS-2$
}
insertStmt = StringUtils.chompLast(insertStmt, ", "); //$NON-NLS-1$
insertStmt += ");"; //$NON-NLS-1$

return insertStmt;
}
/**
* make quote mark
*
* @param value
* @return
*/
private String makeDoubleQuote(String value) {
value = StringUtils.replace(value, "'", "''");

return "'" + value + "'";
}

/**
* 현재 접속 디비
Expand Down
Expand Up @@ -147,43 +147,29 @@ private void applyComment(TableColumnDAO columnDAO) {
query.append(",'table' , '").append(tableDAO.getSysName()).append("'");
query.append(",'column' , '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
try {
stmt.execute();
} catch (Exception e) {
logger.error("Comment drop error ", e);
}
stmt.execute();

query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(columnDAO.getComment()).append("' ,'user' ,").append(userDB.getUsers());
query.append(",'table' , '").append(tableDAO.getSysName()).append("'");
query.append(",'column', '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();

try {
query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(columnDAO.getComment()).append("' ,'user' ,").append(userDB.getUsers());
query.append(",'table' , '").append(tableDAO.getSysName()).append("'");
query.append(",'column', '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();
} catch (Exception e) {
logger.error("Comment add error ", e);
}
} else if (userDB.getDBDefine() == DBDefine.MSSQL_DEFAULT ) {
query.append(" exec sp_dropextendedproperty 'MS_Description' ").append(", 'schema' , " + tableDAO.getSchema_name());
query.append(",'table' , '").append(tableDAO.getTable_name()).append("'");
query.append(",'column' , '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
try {
stmt.execute();
} catch (Exception e) {
logger.error("Comment drop error ", e);
}
stmt.execute();

query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(columnDAO.getComment()).append("' ,'schema' , " + tableDAO.getSchema_name());
query.append(",'table' , '").append(tableDAO.getTable_name()).append("'");
query.append(",'column', '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();

try {
query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(columnDAO.getComment()).append("' ,'schema' , " + tableDAO.getSchema_name());
query.append(",'table' , '").append(tableDAO.getTable_name()).append("'");
query.append(",'column', '").append(columnDAO.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();
} catch (Exception e) {
logger.error("Comment add error ", e);
}
} else if (userDB.getDBDefine() == DBDefine.MYSQL_DEFAULT || userDB.getDBDefine() == DBDefine.MARIADB_DEFAULT) {

query.append(" ALTER TABLE ").append(tableDAO.getSysName()+" CHANGE ")
Expand Down
Expand Up @@ -127,44 +127,33 @@ private void applyComment(TableDAO dao) {
if (userDB.getDBDefine() == DBDefine.ORACLE_DEFAULT || userDB.getDBDefine() == DBDefine.POSTGRE_DEFAULT) {
String strSQL = String.format("COMMENT ON TABLE %s IS %s", dao.getSysName(), SQLUtil.makeQuote(dao.getComment()));
stmt = javaConn.prepareStatement(strSQL);
stmt.execute();
try{
stmt.execute();
}catch(Exception e){
// org.postgresql.util.PSQLException: No results were returned by the query.
}

} else if (userDB.getDBDefine() == DBDefine.MSSQL_8_LE_DEFAULT) {
StringBuffer query = new StringBuffer();
query.append(" exec sp_dropextendedproperty 'MS_Description' ").append(", 'user' ,").append(userDB.getUsers()).append(",'table' ").append(" , '").append(dao.getSysName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
try {
stmt.execute();
} catch (Exception e) {
logger.error("Comment drop error ", e);
}
stmt.execute();

try {
query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(dao.getComment()).append("' ,'user' ,").append(userDB.getUsers()).append(",'table' ").append(" , '").append(dao.getName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();
} catch (Exception e) {
logger.error("Comment add error ", e);
}
query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(dao.getComment()).append("' ,'user' ,").append(userDB.getUsers()).append(",'table' ").append(" , '").append(dao.getName()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();
} else if (userDB.getDBDefine() == DBDefine.MSSQL_DEFAULT ) {
StringBuffer query = new StringBuffer();
query.append(" exec sp_dropextendedproperty 'MS_Description' ").append(", 'schema' , "+dao.getSchema_name()+",'table' ").append(" , '").append(dao.getTable_name()).append("'");
stmt = javaConn.prepareStatement(query.toString());
try {
stmt.execute();
} catch (Exception e) {
logger.error("Comment drop error ", e);
}
stmt.execute();

query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(dao.getComment()).append("' ,'schema' , "+dao.getSchema_name()+" ,'table' ").append(" , '").append(dao.getTable_name()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();

try {
query = new StringBuffer();
query.append(" exec sp_addextendedproperty 'MS_Description', '").append(dao.getComment()).append("' ,'schema' , "+dao.getSchema_name()+" ,'table' ").append(" , '").append(dao.getTable_name()).append("'");
stmt = javaConn.prepareStatement(query.toString());
stmt.execute();
} catch (Exception e) {
logger.error("Comment add error ", e);
}
} else if (userDB.getDBDefine() == DBDefine.MYSQL_DEFAULT || userDB.getDBDefine() == DBDefine.MARIADB_DEFAULT) {
String strSQL = String.format("ALTER TABLE %s COMMENT %s", dao.getSysName(), SQLUtil.makeQuote(dao.getComment()));
if(logger.isDebugEnabled()) logger.debug(strSQL);
Expand Down

0 comments on commit 28b9a94

Please sign in to comment.