/// <summary> /// Create SQL statement for altering destination table /// </summary> /// <param name="properties">componets custom properties</param> /// <param name="tempTableName">temporary table name</param> /// <returns>sql statement for altering destination table</returns> public static string GetAlterDestinationTable(IsagCustomProperties properties, SqlColumnList sqlColumns) { string result = ""; if (properties.HasDestinationTable) { foreach (ColumnConfig config in properties.ColumnConfigList) { string outputColumnName = sqlColumns.GetMatchingColumnname(config.InputColumnName, properties.PrefixInput, properties.PrefixOutput); if (config.HasInput && outputColumnName == "") { if (result == "") { result += " ADD "; } else { result += "," + Environment.NewLine + " "; } result += Brackets(config.InputColumnName) + " " + config.DataTypeInput; } } } return("ALTER TABLE " + Brackets(properties.DestinationTable) + Environment.NewLine + result); }
/// <summary> /// Sets output column by using input column name + input- and output prefix /// </summary> /// <param name="inputPrefix">input column prefix</param> /// <param name="outputPrefix">output column prefix</param> public void AutoMap(string inputPrefix, string outputPrefix) { if (_sqlColumns != null) { OutputColumnName = _sqlColumns.GetMatchingColumnname(InputColumnName, inputPrefix, outputPrefix); } }