Compare commits
4 Commits
allDeltaAn
...
vyu/TDI-32
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e7fc98dc8 | ||
|
|
ec71042f02 | ||
|
|
b3f5b32f71 | ||
|
|
bc27eb5a90 |
@@ -69,6 +69,8 @@ skeleton="../templates/db_output_bulk.skeleton"
|
|||||||
boolean savePoint = ("true").equals(ElementParameterParser.getValue(node,"__SAVE_POINT__"));
|
boolean savePoint = ("true").equals(ElementParameterParser.getValue(node,"__SAVE_POINT__"));
|
||||||
|
|
||||||
String dieOnError = ElementParameterParser.getValue(node, "__DIE_ON_ERROR__");
|
String dieOnError = ElementParameterParser.getValue(node, "__DIE_ON_ERROR__");
|
||||||
|
|
||||||
|
boolean convertToLowercase = ("true").equals(ElementParameterParser.getValue(node, "__CONVERT_COLUMN_TABLE_TO_LOWERCASE__"));
|
||||||
|
|
||||||
String rejectConnName = null;
|
String rejectConnName = null;
|
||||||
List<? extends IConnection> rejectConns = node.getOutgoingConnections("REJECT");
|
List<? extends IConnection> rejectConns = node.getOutgoingConnections("REJECT");
|
||||||
@@ -98,6 +100,18 @@ List<Column> stmtStructure = null;
|
|||||||
if(columnList != null && columnList.size() > 0) {
|
if(columnList != null && columnList.size() > 0) {
|
||||||
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
|
stmtStructure = getManager(dbmsId, cid).createColumnList(columnList, useFieldOptions, fieldOptions, addCols);
|
||||||
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
|
isDynamic = isDynamic && !getManager(dbmsId, cid).isDynamicColumnReplaced();
|
||||||
|
|
||||||
|
if(convertToLowercase){
|
||||||
|
for(Column column : stmtStructure) {
|
||||||
|
if(column.isReplaced()) {
|
||||||
|
for (Column replacedColumn : column.getReplacement()) {
|
||||||
|
replacedColumn.setColumnName(replacedColumn.getColumnName().toLowerCase());
|
||||||
|
}
|
||||||
|
} else if(!column.isDynamic()){
|
||||||
|
column.setColumnName(column.getColumnName().toLowerCase());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
%>
|
%>
|
||||||
|
|
||||||
@@ -116,9 +130,9 @@ if(("true").equals(useExistingConn)) {
|
|||||||
|
|
||||||
String tableName_<%=cid%> = null;
|
String tableName_<%=cid%> = null;
|
||||||
if(dbschema_<%=cid%> == null || dbschema_<%=cid%>.trim().length() == 0) {
|
if(dbschema_<%=cid%> == null || dbschema_<%=cid%>.trim().length() == 0) {
|
||||||
tableName_<%=cid%> = <%=table%>;
|
tableName_<%=cid%> = (<%=table%>)<%=convertToLowercase ? ".toLowerCase()" : ""%>;
|
||||||
} else {
|
} else {
|
||||||
tableName_<%=cid%> = dbschema_<%=cid%> + "\".\"" + <%=table%>;
|
tableName_<%=cid%> = dbschema_<%=cid%> + "\".\"" + (<%=table%>)<%=convertToLowercase ? ".toLowerCase()" : ""%>;
|
||||||
}
|
}
|
||||||
|
|
||||||
<%
|
<%
|
||||||
|
|||||||
@@ -393,6 +393,14 @@
|
|||||||
<DEFAULT>false</DEFAULT>
|
<DEFAULT>false</DEFAULT>
|
||||||
</PARAMETER>
|
</PARAMETER>
|
||||||
|
|
||||||
|
<PARAMETER
|
||||||
|
NAME="CONVERT_COLUMN_TABLE_TO_LOWERCASE"
|
||||||
|
FIELD="CHECK"
|
||||||
|
NUM_ROW="25"
|
||||||
|
>
|
||||||
|
<DEFAULT>false</DEFAULT>
|
||||||
|
</PARAMETER>
|
||||||
|
|
||||||
<PARAMETER
|
<PARAMETER
|
||||||
NAME="USE_BATCH_SIZE"
|
NAME="USE_BATCH_SIZE"
|
||||||
FIELD="CHECK"
|
FIELD="CHECK"
|
||||||
|
|||||||
@@ -49,6 +49,8 @@ skeleton="../templates/db_output_bulk.skeleton"
|
|||||||
|
|
||||||
boolean useBatchSize = ("true").equals(ElementParameterParser.getValue(node,"__USE_BATCH_SIZE__"));
|
boolean useBatchSize = ("true").equals(ElementParameterParser.getValue(node,"__USE_BATCH_SIZE__"));
|
||||||
String batchSize=ElementParameterParser.getValue(node,"__BATCH_SIZE__");
|
String batchSize=ElementParameterParser.getValue(node,"__BATCH_SIZE__");
|
||||||
|
|
||||||
|
boolean convertToLowercase = ("true").equals(ElementParameterParser.getValue(node, "__CONVERT_COLUMN_TABLE_TO_LOWERCASE__"));
|
||||||
|
|
||||||
//feature:22704
|
//feature:22704
|
||||||
boolean savePoint = ("true").equals(ElementParameterParser.getValue(node,"__SAVE_POINT__"));
|
boolean savePoint = ("true").equals(ElementParameterParser.getValue(node,"__SAVE_POINT__"));
|
||||||
@@ -156,11 +158,16 @@ skeleton="../templates/db_output_bulk.skeleton"
|
|||||||
if(conns_dynamic!=null && conns_dynamic.size()>0){
|
if(conns_dynamic!=null && conns_dynamic.size()>0){
|
||||||
IConnection conn = conns_dynamic.get(0);
|
IConnection conn = conns_dynamic.get(0);
|
||||||
if(!("".equals(insertColName.toString()))) {
|
if(!("".equals(insertColName.toString()))) {
|
||||||
|
String insertColNameStr = null;
|
||||||
|
if(convertToLowercase)
|
||||||
|
insertColNameStr = insertColName.toString().toLowerCase();
|
||||||
|
else
|
||||||
|
insertColNameStr = insertColName.toString();
|
||||||
%>
|
%>
|
||||||
String insert_<%=cid%> = "INSERT INTO \"" + tableName_<%=cid%> + "\" (<%=insertColName.toString()%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
|
String insert_<%=cid%> = "INSERT INTO \"" + tableName_<%=cid%> + "\" (<%=insertColNameStr%>, "+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")<%if(convertToLowercase){%>.toLowerCase()<%}%>+") VALUES (<%=insertValueStmt.toString()%>, "+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
|
||||||
<% } else {
|
<% } else {
|
||||||
%>
|
%>
|
||||||
String insert_<%=cid%> = "INSERT INTO \"" + tableName_<%=cid%> + "\" ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
|
String insert_<%=cid%> = "INSERT INTO \"" + tableName_<%=cid%> + "\" ("+DynamicUtils.getInsertIntoStmtColumnsList(<%=conn.getName()%>.<%=getDynamicColumn()%>, "<%=dbmsId %>")<%if(convertToLowercase){%>.toLowerCase()<%}%>+") VALUES ("+DynamicUtils.getInsertIntoStmtValuesList(<%=conn.getName()%>.<%=getDynamicColumn()%>)+")";
|
||||||
<%
|
<%
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -98,4 +98,6 @@ NB_LINE_REJECTED.NAME=Number Of Rejected Lines
|
|||||||
SPECIFY_DATASOURCE_ALIAS.NAME=Specify a data source alias
|
SPECIFY_DATASOURCE_ALIAS.NAME=Specify a data source alias
|
||||||
DATASOURCE.NAME=Data source
|
DATASOURCE.NAME=Data source
|
||||||
DATASOURCE_ALIAS.NAME=Data source alias
|
DATASOURCE_ALIAS.NAME=Data source alias
|
||||||
PROPERTIES.NAME=Additional JDBC Parameters
|
PROPERTIES.NAME=Additional JDBC Parameters
|
||||||
|
|
||||||
|
CONVERT_COLUMN_TABLE_TO_LOWERCASE.NAME=Convert columns and table to lowercase
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
Boolean isParallelize ="true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__PARALLELIZE__"));
|
Boolean isParallelize ="true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__PARALLELIZE__"));
|
||||||
String dbms=ElementParameterParser.getValue(node, "__MAPPING__");
|
String dbms=ElementParameterParser.getValue(node, "__MAPPING__");
|
||||||
boolean convertToUppercase_tableAction = "true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__CONVERT_COLUMN_TABLE_TO_UPPERCASE__"));
|
boolean convertToUppercase_tableAction = "true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__CONVERT_COLUMN_TABLE_TO_UPPERCASE__"));
|
||||||
|
boolean convertToLowercase_tableAction = "true".equalsIgnoreCase(ElementParameterParser.getValue(node, "__CONVERT_COLUMN_TABLE_TO_LOWERCASE__"));
|
||||||
if (!isParallelize) {
|
if (!isParallelize) {
|
||||||
//end issue 0010346 Parallelization crash with "Drop table if exists and create"
|
//end issue 0010346 Parallelization crash with "Drop table if exists and create"
|
||||||
|
|
||||||
@@ -222,7 +223,7 @@ if (!isParallelize) {
|
|||||||
while(rsTable_<%=cid%>.next()) {
|
while(rsTable_<%=cid%>.next()) {
|
||||||
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
|
String table_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_NAME");
|
||||||
String schema_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_SCHEM");
|
String schema_<%=cid%> = rsTable_<%=cid%>.getString("TABLE_SCHEM");
|
||||||
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=table%>)
|
if(table_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(<%=table%><%if(convertToLowercase_tableAction){%>.toLowerCase()<%}%>)
|
||||||
&& (schema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(dbschema_<%=cid%>) || ((dbschema_<%=cid%> ==null || dbschema_<%=cid%>.trim().length() ==0) && defaultSchema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(schema_<%=cid%>)))) {
|
&& (schema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(dbschema_<%=cid%>) || ((dbschema_<%=cid%> ==null || dbschema_<%=cid%>.trim().length() ==0) && defaultSchema_<%=cid%>.equals<%if(!tableNameCaseSensitive){%>IgnoreCase<%}%>(schema_<%=cid%>)))) {
|
||||||
whetherExist_<%=cid%> = true;
|
whetherExist_<%=cid%> = true;
|
||||||
break;
|
break;
|
||||||
@@ -377,7 +378,7 @@ if (!isParallelize) {
|
|||||||
if(conns_dynamic!=null && conns_dynamic.size()>0){
|
if(conns_dynamic!=null && conns_dynamic.size()>0){
|
||||||
String query=manager.getCreateTableSQL(stmtStructure);
|
String query=manager.getCreateTableSQL(stmtStructure);
|
||||||
%>
|
%>
|
||||||
stmtCreate_<%=cid%>.execute((("<%=query%>").replace("{TALEND_DYNAMIC_COLUMN}",DynamicUtils.getCreateTableSQL(<%=conns_dynamic.get(0).getName()%>.<%=getDynamicColumn()%>, "<%=dbms==null?"":dbms.toLowerCase()%>")<%if(convertToUppercase_tableAction){%>.toUpperCase()<%}%>)+")<%=ending%>"));
|
stmtCreate_<%=cid%>.execute((("<%=query%>").replace("{TALEND_DYNAMIC_COLUMN}",DynamicUtils.getCreateTableSQL(<%=conns_dynamic.get(0).getName()%>.<%=getDynamicColumn()%>, "<%=dbms==null?"":dbms.toLowerCase()%>"))+")<%=ending%>")<%if(convertToUppercase_tableAction){%>.toUpperCase()<%}else if(convertToLowercase_tableAction){%>.toLowerCase()<%}%>);
|
||||||
<%
|
<%
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user