public SAParameter AddOutputParameter(string name, SADbType type) { SAParameter prm = new SAParameter(); prm.Direction = ParameterDirection.Output; prm.ParameterName = name; prm.SADbType = type; _parameters.Add(prm); return(prm); }
public SAParameter AddParameter(string name, SADbType type, object value, ParameterDirection direction) { SAParameter prm = new SAParameter(); prm.Direction = direction; prm.ParameterName = name; prm.SADbType = type; prm.Value = this.PrepareSqlValue(value); _parameters.Add(prm); return(prm); }
public SAParameter AddParameter(string name, SADbType type, object value, bool convertZeroToDBNull) { SAParameter prm = new SAParameter(); prm.Direction = ParameterDirection.Input; prm.ParameterName = name; prm.SADbType = type; prm.Value = this.PrepareSqlValue(value, convertZeroToDBNull); _parameters.Add(prm); return(prm); }
public SAParameter AddStreamParameter(string name, Stream value, SADbType type) { SAParameter prm = new SAParameter(); prm.Direction = ParameterDirection.Input; prm.ParameterName = name; prm.SADbType = type; value.Position = 0; byte[] data = new byte[value.Length]; value.Read(data, 0, (int)value.Length); prm.Value = data; _parameters.Add(prm); return(prm); }
static public Dictionary <string, SAParameter> GetParameters(Guid dataID, tgProviderSpecificMetadata providerMetadata, tgColumnMetadataCollection columns) { lock (parameterCache) { if (!parameterCache.ContainsKey(dataID)) { // The Parameters for this Table haven't been cached yet, this is a one time operation Dictionary <string, SAParameter> types = new Dictionary <string, SAParameter>(); SAParameter param1; foreach (tgColumnMetadata col in columns) { tgTypeMap typeMap = providerMetadata.GetTypeMap(col.PropertyName); if (typeMap != null) { string nativeType = typeMap.NativeType; SADbType dbType = Cache.NativeTypeToDbType(nativeType); param1 = new SAParameter(Delimiters.Param + col.PropertyName, dbType, 0, col.Name); param1.SourceColumn = col.Name; switch (dbType) { case SADbType.BigInt: case SADbType.Decimal: case SADbType.Float: case SADbType.Integer: case SADbType.Money: case SADbType.Real: case SADbType.SmallMoney: case SADbType.TinyInt: case SADbType.SmallInt: param1.Size = (int)col.CharacterMaxLength; param1.Precision = (byte)col.NumericPrecision; param1.Scale = (byte)col.NumericScale; break; case SADbType.VarChar: param1.Size = (int)col.CharacterMaxLength; break; //case SADbType.Integer: // param1.Size = 4; // break; case SADbType.Date: case SADbType.DateTime: param1.Precision = 23; param1.Scale = 3; break; case SADbType.SmallDateTime: param1.Precision = 16; break; } types[col.Name] = param1; } } parameterCache[dataID] = types; } } return(parameterCache[dataID]); }
internal static string GetNativeType(SADbType saDbType) { switch (saDbType) { case SADbType.BigInt: return("bigint"); case SADbType.Binary: return("binary"); case SADbType.Bit: return("bit"); case SADbType.Char: return("char"); case SADbType.Date: return("date"); case SADbType.DateTime: return("datetime"); //case SADbType.DateTime2: return "datetime2"; case SADbType.DateTimeOffset: return("datetimeoffset"); case SADbType.Decimal: return("decimal"); case SADbType.Double: return("double"); case SADbType.Float: return("float"); case SADbType.Image: return("image"); case SADbType.Integer: return("integer"); case SADbType.LongBinary: return("long binary"); case SADbType.LongNVarchar: return("long nvarchar"); case SADbType.LongVarbit: return("long varbit"); case SADbType.LongVarchar: return("long varchar"); case SADbType.Money: return("money"); case SADbType.NChar: return("nchar"); case SADbType.NText: return("ntext"); case SADbType.NVarChar: return("nvarchar"); case SADbType.Real: return("real"); case SADbType.SmallDateTime: return("smalldatetime"); case SADbType.SmallInt: return("smallint"); case SADbType.SmallMoney: return("smallmoney"); //case SADbType.Variant: return "sql_variant"; case SADbType.Text: return("text"); case SADbType.Time: return("time"); case SADbType.TimeStamp: return("timestamp"); case SADbType.TimeStampWithTimeZone: return("timestamp with time zone"); case SADbType.TinyInt: return("tinyint"); case SADbType.UniqueIdentifier: return("uniqueidentifier"); case SADbType.UnsignedBigInt: return("unsigned bigint"); case SADbType.UnsignedInt: return("unsigned int"); case SADbType.UnsignedSmallInt: return("unsigned smallint"); case SADbType.VarBinary: return("varbinary"); case SADbType.VarChar: return("varchar"); case SADbType.Xml: return("xml"); default: return("sql_variant"); } }
public SqlAnywhereColumn(string actualName, Table table, bool isIdentity, SADbType saDbType, int maxLength) : base(actualName, table, isIdentity, saDbType.GetDbType() ?? default(DbType), maxLength) { _saDbType = saDbType; }
public SqlAnywhereColumn(string actualName, Table table, SADbType saDbType) : base(actualName, table) { _saDbType = saDbType; }
public static Type GetClrType(SADbType saDBType) { Type clrType; return ClrTypes.TryGetValue(saDBType, out clrType) ? clrType : typeof(object); }