public void TestColumnFormatting() { var col1 = new SqlDataColumn("[FieldName]"); var col2 = new SqlDataColumn("FieldName"); Assert.AreEqual(col1.ToString(), "[FieldName]"); Assert.AreEqual(col1.ToString(), col2.ToString()); }
private static string ToDbTypeName(this SqlDataColumn column) { if (column.DbType != default(SqlDbType)) { return(column.ToDbTypeNameFromSqlType()); } else { return(column.Type.ToDbTypeNameFromType()); } }
private static string createIndexCommandText(SqlDataColumn column, string tableName) { string cmd = "CREATE"; if (column.IsUniqueIndex) { cmd += " UNIQUE"; } if (column.IsClusteredIndex) { cmd += " CLUSTERED"; } cmd += $" INDEX idx_{column.Name} ON {tableName}({column.Name})"; return(cmd); }
private static string ToDbTypeNameFromSqlType(this SqlDataColumn column) { var type = column.DbType; var size = column.Size; var precision = column.Precision; if (type == SqlDbType.BigInt) { return("bigint"); } else if (type == SqlDbType.Bit) { return("bit"); } else if (type == SqlDbType.Binary) { return("binary"); } else if (type == SqlDbType.Char) { if (size != default(int)) { return($"char({size})"); } return("char"); } else if (type == SqlDbType.Date) { return("date"); } else if (type == SqlDbType.DateTime) { return("datetime"); } else if (type == SqlDbType.DateTime2) { return("datetime"); } else if (type == SqlDbType.DateTimeOffset) { return("datetimeoffset"); } else if (type == SqlDbType.Decimal) { if (size != default(int) && precision != default(int)) { return($"decimal({size},{precision})"); } else if (size != default(int)) { return($"decimal({size})"); } else { return("decimal"); } } else if (type == SqlDbType.Float) { if (size != default(int) && precision != default(int)) { return($"float({size},{precision})"); } else if (size != default(int)) { return($"float({size})"); } else { return("float"); } } else if (type == SqlDbType.Image) { return("binary"); } else if (type == SqlDbType.Int) { return("int"); } else if (type == SqlDbType.BigInt) { if (size != default(int)) { return($"bigint({size})"); } else { return("bigint"); } } else if (type == SqlDbType.Money) { return("money"); } else if (type == SqlDbType.NChar) { if (size != default(int)) { return($"nchar({size})"); } else { return("nchar"); } } else if (type == SqlDbType.NVarChar) { if (size != default(int)) { return($"nvarchar({size})"); } else { return("nvarchar(100)"); } } else if (type == SqlDbType.Real) { if (size != default(int) && precision != default(int)) { return($"real({size},{precision})"); } else if (size != default(int)) { return($"real({size})"); } else { return("real"); } } else if (type == SqlDbType.SmallInt) { return("smallint"); } else if (type == SqlDbType.SmallMoney) { return("smallmoney"); } else if (type == SqlDbType.SmallDateTime) { return("smalldatetime"); } else if (type == SqlDbType.Text) { return("text"); } else if (type == SqlDbType.Time) { return("time"); } else if (type == SqlDbType.TinyInt) { return("tinyint"); } else if (type == SqlDbType.UniqueIdentifier) { return("timestamp"); } else if (type == SqlDbType.UniqueIdentifier) { return("uniqueidentifier"); } else if (type == SqlDbType.VarBinary) { return("varbinary"); } else if (type == SqlDbType.VarChar) { if (size != default(int)) { return($"varchar({size})"); } else { return("varchar(100)"); } } return(type.ToString()); }