protected static string FormatearParametroParaLogSegunTipo(object valor, SqlDbType tipo) { if (tipo.Equals(SqlDbType.Char) || tipo.Equals(SqlDbType.DateTime2) || tipo.Equals(SqlDbType.DateTimeOffset) || tipo.Equals(SqlDbType.SmallDateTime) || tipo.Equals(SqlDbType.Text) || tipo.Equals(SqlDbType.VarChar)) { return("'" + valor.ToString() + "'"); } else if (tipo.Equals(SqlDbType.DateTime)) { return("'" + ((DateTime)valor).ToString("yyyy-MM-dd HH:mm:ss") + "'"); } else if (tipo.Equals(SqlDbType.Date)) { return("'" + ((DateTime)valor).ToString("yyyy-MM-dd") + "'"); } else if (tipo.Equals(SqlDbType.Time)) { return("'" + ((DateTime)valor).ToString("HH:mm:ss") + "'"); } else if (tipo.Equals(SqlDbType.Decimal)) { NumberFormatInfo nfi = new NumberFormatInfo(); nfi.NumberDecimalSeparator = "."; return(((decimal)valor).ToString(nfi)); } return(valor.ToString()); }
/// <summary> /// 将SqlDbType类型转换为Net /// </summary> /// <param name="theType">待转换类型</param> /// <returns></returns> public static Type GetNetType(SqlDbType theType) { if (theType.Equals(SqlDbType.VarBinary)) { return(typeof(byte[])); } if (theType.Equals(SqlDbType.UniqueIdentifier)) { return(typeof(Guid)); } switch (theType) { case SqlDbType.Bit: return(typeof(bool)); case SqlDbType.TinyInt: return(typeof(byte)); case SqlDbType.DateTime: return(typeof(DateTime)); case SqlDbType.DateTime2: return(typeof(DateTime)); case SqlDbType.DateTimeOffset: return(typeof(DateTime)); case SqlDbType.SmallDateTime: return(typeof(DateTime)); case SqlDbType.Money: return(typeof(decimal)); case SqlDbType.Decimal: return(typeof(decimal)); case SqlDbType.Float: return(typeof(double)); case SqlDbType.SmallInt: return(typeof(short)); case SqlDbType.Int: return(typeof(int)); case SqlDbType.BigInt: return(typeof(long)); case SqlDbType.Real: return(typeof(float)); case SqlDbType.NVarChar: return(typeof(string)); default: return(typeof(string)); } }
public static SqlParameter CrearParametro(string nombreParametro, SqlDbType tipo, object valor, ParameterDirection direccion) { var sqlParameter = new SqlParameter(nombreParametro, tipo); if (tipo.Equals(SqlDbType.Bit) && !valor.Equals(DBNull.Value)) { sqlParameter.Value = Convert.ToBoolean(valor); } else if (!tipo.Equals(SqlDbType.Bit)) { sqlParameter.Value = valor; //!= null ? valor : DBNull.Value; } sqlParameter.Direction = direccion; return(sqlParameter); }
private static System.Type ChangeType(SqlDbType type) { if (type.Equals(SqlDbType.NVarChar)) { return(typeof(System.String)); } if (type.Equals(SqlDbType.Date)) { return(typeof(System.DateTime)); } if (type.Equals(SqlDbType.DateTime)) { return(typeof(System.DateTime)); } if (type.Equals(SqlDbType.Float)) { return(typeof(System.Double)); } if (type.Equals(SqlDbType.Int)) { return(typeof(System.Int32)); } if (type.Equals(SqlDbType.Money)) { return(typeof(System.Decimal)); } else { return(typeof(System.String)); } }
public static SqlParameter GetParameter <T>(T value, SqlDbType paramType, string name, int length) { if (!value.Equals(null)) { SqlParameter retVal = new SqlParameter(name, paramType, length); retVal.Direction = ParameterDirection.Input; if (paramType.Equals(SqlDbType.Int)) { retVal.Value = Convert.ToInt64(value); } else if (paramType.Equals(SqlDbType.Float)) { retVal.Value = Convert.ToSingle(value); } else { retVal.Value = value.ToString(); } return(retVal); } return(new SqlParameter(name, DBNull.Value)); }
public static SqlParameter CreateInputParam(string paramName, SqlDbType dbType, object objValue) { SqlParameter parameter = new SqlParameter(paramName, dbType); if (objValue == null || objValue == DBNull.Value) { parameter.IsNullable = true; parameter.Value = DBNull.Value; } else { if (dbType.Equals(SqlDbType.UniqueIdentifier)) { parameter.Value = System.Data.SqlTypes.SqlGuid.Parse(objValue.ToString()); } else { parameter.Value = objValue; } } return(parameter); }
private static bool IsDefaultLength(SqlDbType sqlDBType, int length) { int DefaultLength; switch (sqlDBType) { case System.Data.SqlDbType.Int: case System.Data.SqlDbType.Real: case System.Data.SqlDbType.SmallMoney: case System.Data.SqlDbType.SmallDateTime: DefaultLength = 4; break; case System.Data.SqlDbType.Bit: case System.Data.SqlDbType.TinyInt: DefaultLength = 1; break; case System.Data.SqlDbType.DateTime: case System.Data.SqlDbType.Float: case System.Data.SqlDbType.BigInt: case System.Data.SqlDbType.Money: case System.Data.SqlDbType.Timestamp: DefaultLength = 8; break; case System.Data.SqlDbType.Decimal: DefaultLength = 9; break; case System.Data.SqlDbType.SmallInt: DefaultLength = 2; break; case System.Data.SqlDbType.NChar: case System.Data.SqlDbType.Char: DefaultLength = 10; break; case System.Data.SqlDbType.Text: DefaultLength = 2147483647; break; case System.Data.SqlDbType.UniqueIdentifier: case System.Data.SqlDbType.NText: case System.Data.SqlDbType.Image: DefaultLength = 16; break; case System.Data.SqlDbType.Binary: case System.Data.SqlDbType.VarChar: case System.Data.SqlDbType.VarBinary: case System.Data.SqlDbType.NVarChar: DefaultLength = 50; break; default: DefaultLength = -1; return false; } if (sqlDBType.Equals(SqlDbType.Text)) return true; return (DefaultLength == length); }
/// <summary> /// Gets the SQL values. /// </summary> /// <param name="oracleType">Type of the oracle.</param> /// <param name="value">The value.</param> /// <returns></returns> /// <Remarks> /// Created Time: 2008-6-13 17:55 /// Created By: jack_que /// Last Modified Time: /// Last Modified By: /// </Remarks> public static object GetSqlValues(SqlDbType oracleType, string value) { if (value.Equals(string.Empty)) { return Convert.DBNull; } if (oracleType.Equals(SqlDbType.DateTime)) { return Convert.ToDateTime(value); } if (oracleType.Equals(SqlDbType.Int)) { return Convert.ToInt32(value); } if (oracleType.Equals(SqlDbType.Decimal)) { return Convert.ToSingle(value); } return value; }