public AS400DataProvider(DB2iSeriesConfiguration dB2ISeriesConfiguration) : base(dB2ISeriesConfiguration.Provider.Name(), dB2ISeriesConfiguration.MappingSchema) { this.dB2ISeriesConfiguration = dB2ISeriesConfiguration; dB2ISeriesConfiguration.InitDataProvider(this, SetCharField); SqlProviderFlags.IsDistinctOrderBySupported = true; SetCharFieldToType <char>("CHAR", (r, i) => DataTools.GetChar(r, i)); }
public IDataProvider GetDataProvider(IEnumerable <NamedValue> attributes) { var dataProviderOptions = new DB2iSeriesConfiguration { MapGuidAsString = false, Provider = DB2iSeriesProvider.DB2, Version = DB2iSeriesVersion.v5r4 }; if (attributes == null) { return(new DB2iSeriesDataProvider_RoyChaseV2_9(dataProviderOptions)); } var attribs = attributes.ToList(); var attrib = attribs.FirstOrDefault(_ => _.Name == nameof(DB2iSeriesConfiguration.MapGuidAsString)); if (attrib != null) { bool.TryParse(attrib.Value, out var mapGuidAsString); dataProviderOptions.MapGuidAsString = mapGuidAsString; } var version = attribs.FirstOrDefault(_ => _.Name == "MinVer"); dataProviderOptions.Version = version != null && version.Value == "7.1.38" ? DB2iSeriesVersion.v7r1 : DB2iSeriesVersion.v5r4; if (dataProviderOptions.MapGuidAsString) { dataProviderOptions.Provider = DB2iSeriesProvider.DB2_GAS; } return(new DB2iSeriesDataProvider_RoyChaseV2_9(dataProviderOptions)); }
public DB2iSeriesDataProvider_RoyChaseV2_9(DB2iSeriesConfiguration db2iSeriesConfiguration) : base(db2iSeriesConfiguration.Provider.Name(), db2iSeriesConfiguration.MappingSchema) { this.db2iSeriesConfiguration = db2iSeriesConfiguration; db2iSeriesConfiguration.InitDataProvider(this, SetCharField); }
public static BulkCopyRowsCopied BulkCopy_DB2iSeries <T>(this ITable <T> table, BulkCopyOptions options, IEnumerable <T> source, DB2iSeriesConfiguration dB2ISeriesConfiguration, DB2iSeriesBulkCopy bulkCopy = null) { if (bulkCopy == null) { bulkCopy = new DB2iSeriesBulkCopy(dB2ISeriesConfiguration); } return(bulkCopy.BulkCopy(options.BulkCopyType == BulkCopyType.Default ? DB2iSeriesTools.DefaultBulkCopyType : options.BulkCopyType, table, options, source)); }