public virtual string GetDbType(IColumnSchema columnSchema, IColumnTypeSchema columnTypeSchema, IPrimaryKeySchema primaryKeySchema) { var dbType = columnTypeSchema.CreateFormat; if (columnTypeSchema.CreateFormat.Contains("{0}")) { if (columnTypeSchema.CreateFormat.Contains("{1}")) { dbType = string.Format(columnTypeSchema.CreateFormat, this.GetPrecision(columnSchema), columnSchema.Scale.Value); } else { if (columnSchema.Precision.HasValue) { dbType = string.Format(columnTypeSchema.CreateFormat, this.GetPrecision(columnSchema)); } else { dbType = string.Format(columnTypeSchema.CreateFormat, columnSchema.MaxLength.Value); } } } return(this.GetDbType(dbType, columnSchema, primaryKeySchema)); }
public string GetDbType(IColumnSchema columnSchema, IColumnTypeSchema columnTypeSchema, IPrimaryKeySchema primaryKeySchema) { ArgumentUtility.CheckNotNull("columnSchema", columnSchema); ArgumentUtility.CheckNotNull("columnTypeSchema", columnTypeSchema); return(this._provider.GetDbType(columnSchema, columnTypeSchema, primaryKeySchema)); }
public override string GetDbType(IColumnSchema columnSchema, IColumnTypeSchema columnTypeSchema, IPrimaryKeySchema primaryKeySchema) { if (columnTypeSchema.Type == typeof(string) && !columnSchema.MaxLength.HasValue) { return(this.GetDbType("M", columnSchema, primaryKeySchema)); } return(base.GetDbType(columnSchema, columnTypeSchema, primaryKeySchema)); }
protected virtual string GetSingleParameterFormat(IColumnSchema columnSchema, IColumnTypeSchema columnTypeSchema) { if (columnSchema.Precision.HasValue) { return(string.Format(columnTypeSchema.CreateFormat, this.GetPrecision(columnSchema))); } else { return(string.Format(columnTypeSchema.CreateFormat, columnSchema.MaxLength.Value)); } }
protected override string GetSingleParameterFormat(IColumnSchema columnSchema, IColumnTypeSchema columnTypeSchema) { if (columnTypeSchema.ColumnType == "TIMESTAMP") { return(string.Format(columnTypeSchema.CreateFormat, columnSchema.Scale.Value)); } return(base.GetSingleParameterFormat(columnSchema, columnTypeSchema)); }