CodeSOD: Finding the Right Size

This post was originally published on this site

The Daily WTF

Zeke sends us a C# snippet from an extract-transform-load process his company uses. It’s… special.

private void ResizeColumn(string table, string column, int minSize) { if(null == _connection) return; string sqlReadSize = “SELECT DATA_LENGTH,DATA_TYPE,DATA_PRECISION,DATA_SCALE FROM USER_TAB_COLS WHERE TABLE_NAME = ‘” + table.ToUpper() + “‘ AND COLUMN_NAME = ‘” + column.ToUpper() + “‘”; string data_length = “”; string data_type = “”; string data_precision = “”; string data_scale = “”; string sizeInfo = minSize.ToString(); IDataReader r = null; try { r = _connection.DbAccessor.ExecuteSqlText.ExecuteReader(sqlReadSize); if(null != r && r.Read()) { if(!r.IsDBNull(0)) data_length = Convert.ToString(r[0]); if(!r.IsDBNull(1)) data_type = Convert.ToString(r[1]); if(!r.IsDBNull(2)) data_precision = Convert.ToString(r[2]); if(!r.IsDBNull(3)) data_scale = Convert.ToString(r[3]); r.Close(); r = null; } } catch(Exception ex) { System.Diagnostics.Debug.WriteLine(ex.Message); return; } finally { if(null != r) { r.Close(); r = null; } } if(data_type == “NUMBER”) { return; } if(data_type == “DATE”) { return; } if(data_type == “CLOB”) { return; } if(data_type == “BLOB”) { return; }

To read the full article click on the 'post' link at the top.