protected override void AddParameter(DbCommand command, QueryParameter parameter, object value) { DbQueryType sqlType = (DbQueryType)parameter.QueryType; if (sqlType == null) { sqlType = (DbQueryType)this.Provider.Language.TypeSystem.GetColumnType(parameter.Type); } int len = sqlType.Length; if (len == 0 && DbTypeSystem.IsVariableLength(sqlType.SqlDbType)) { len = Int32.MaxValue; } var p = ((SqlCommand)command).Parameters.Add("@" + parameter.Name, sqlType.SqlDbType, len); if (sqlType.Precision != 0) { p.Precision = (byte)sqlType.Precision; } if (sqlType.Scale != 0) { p.Scale = (byte)sqlType.Scale; } p.Value = value ?? DBNull.Value; }
protected override void AddParameter(DbCommand command, QueryParameter parameter, object value) { DbQueryType sqlType = (DbQueryType)parameter.QueryType; if (sqlType == null) { sqlType = (DbQueryType)this.Provider.Language.TypeSystem.GetColumnType(parameter.Type); } int len = sqlType.Length; if (len == 0 && DbTypeSystem.IsVariableLength(sqlType.SqlDbType)) { len = Int32.MaxValue; } //var p = ((OracleCommand)command).Parameters.Add(":" + parameter.Name, ToOracleType(sqlType.SqlDbType), len); var p = provider.AdoProvider.CreateParameter(":" + parameter.Name, sqlType.SqlDbType, len); /* * if (sqlType.Precision != 0) * p.Precision = (byte)sqlType.Precision; * if (sqlType.Scale != 0) * p.Scale = (byte)sqlType.Scale; */ p.Value = value ?? DBNull.Value; command.Parameters.Add(p); }
protected override void AddParameter(DbCommand command, QueryParameter parameter, object value) { DbQueryType queryType = (DbQueryType)parameter.QueryType; if (queryType == null) { queryType = (DbQueryType)base.Provider.Language.TypeSystem.GetColumnType(parameter.Type); } int length = queryType.Length; if ((length == 0) && DbTypeSystem.IsVariableLength(queryType.SqlDbType)) { length = 0x7fffffff; } if (queryType.SqlDbType == SqlDbType.NVarChar) { length = System.Convert.ToString(value).Length; } SqlParameter parameter2 = ((SqlCommand)command).Parameters.Add("@" + parameter.Name, queryType.SqlDbType, length); if (queryType.Precision != 0) { parameter2.Precision = (byte)queryType.Precision; } if (queryType.Scale != 0) { parameter2.Scale = (byte)queryType.Scale; } parameter2.Value = value ?? DBNull.Value; }
protected override void AddParameter(DbCommand command, QueryParameter parameter, object value) { DbQueryType queryType = (DbQueryType)parameter.QueryType; if (queryType == null) { queryType = (DbQueryType)base.Provider.Language.TypeSystem.GetColumnType(parameter.Type); } int length = queryType.Length; if ((length == 0) && DbTypeSystem.IsVariableLength(queryType.SqlDbType)) { length = 0x7fffffff; } DbParameter parameter2 = this.provider.AdoProvider.CreateParameter(":" + parameter.Name, queryType.SqlDbType, length); parameter2.Value = value ?? DBNull.Value; command.Parameters.Add(parameter2); }