public PostgreSQLDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) : this( GetProviderName(version), new PostgreSQLMappingSchema(), version) { }
public PostgreSQLDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) : this( version == PostgreSQLVersion.v92 ? ProviderName.PostgreSQL92 : ProviderName.PostgreSQL93, new PostgreSQLMappingSchema(), version) { }
protected PostgreSQLDataProvider(string name, PostgreSQLVersion version) : base(name, GetMappingSchema(version), NpgsqlProviderAdapter.GetInstance()) { Version = version; SqlProviderFlags.IsApplyJoinSupported = version != PostgreSQLVersion.v92; SqlProviderFlags.IsInsertOrUpdateSupported = version == PostgreSQLVersion.v95; SqlProviderFlags.IsUpdateSetTableAliasSupported = false; SqlProviderFlags.IsCommonTableExpressionsSupported = true; SqlProviderFlags.IsDistinctOrderBySupported = false; SqlProviderFlags.IsSubQueryOrderBySupported = true; SqlProviderFlags.IsAllSetOperationsSupported = true; SqlProviderFlags.RowConstructorSupport = RowFeature.Equality | RowFeature.Comparisons | RowFeature.CompareToSelect | RowFeature.In | RowFeature.IsNull | RowFeature.Update | RowFeature.UpdateLiteral | RowFeature.Overlaps | RowFeature.Between; SetCharFieldToType <char>("bpchar", DataTools.GetCharExpression); SetCharFieldToType <char>("character", DataTools.GetCharExpression); SetCharField("bpchar", (r, i) => r.GetString(i).TrimEnd(' ')); SetCharField("character", (r, i) => r.GetString(i).TrimEnd(' ')); _sqlOptimizer = new PostgreSQLSqlOptimizer(SqlProviderFlags); ConfigureTypes(); }
public PostgreSQLDataProvider(string name, PostgreSQLVersion version = PostgreSQLVersion.v92) : base( name, GetMappingSchema(version, NpgsqlProviderAdapter.GetInstance().MappingSchema), NpgsqlProviderAdapter.GetInstance()) { Version = version; SqlProviderFlags.IsApplyJoinSupported = version != PostgreSQLVersion.v92; SqlProviderFlags.IsInsertOrUpdateSupported = version == PostgreSQLVersion.v95; SqlProviderFlags.IsUpdateSetTableAliasSupported = false; SqlProviderFlags.IsCommonTableExpressionsSupported = true; SqlProviderFlags.IsDistinctOrderBySupported = false; SqlProviderFlags.IsSubQueryOrderBySupported = true; SqlProviderFlags.IsAllSetOperationsSupported = true; SqlProviderFlags.IsGroupByExpressionSupported = false; SetCharFieldToType <char>("bpchar", DataTools.GetCharExpression); SetCharFieldToType <char>("character", DataTools.GetCharExpression); SetCharField("bpchar", (r, i) => r.GetString(i).TrimEnd(' ')); SetCharField("character", (r, i) => r.GetString(i).TrimEnd(' ')); _sqlOptimizer = new PostgreSQLSqlOptimizer(SqlProviderFlags); ConfigureTypes(); }
protected virtual IDataProvider CreatePotgreSqlProvider(PostgreSQLVersion version, string connectionString) { if (!string.IsNullOrEmpty(connectionString)) { return(DataConnection.GetDataProvider(ProviderName.PostgreSQL, connectionString)); } string providerName; switch (version) { case PostgreSQLVersion.v92: providerName = ProviderName.PostgreSQL92; break; case PostgreSQLVersion.v93: providerName = ProviderName.PostgreSQL93; break; case PostgreSQLVersion.v95: providerName = ProviderName.PostgreSQL95; break; default: throw new ArgumentOutOfRangeException(nameof(version), version, null); } return(new PostgreSQLDataProvider(providerName, version)); }
public static IDataProvider GetDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) { return(version switch { PostgreSQLVersion.v95 => _postgreSQLDataProvider95.Value, PostgreSQLVersion.v93 => _postgreSQLDataProvider93.Value, _ => _postgreSQLDataProvider92.Value, });
private static string GetProviderName(PostgreSQLVersion version) { return(version switch { PostgreSQLVersion.v92 => ProviderName.PostgreSQL92, PostgreSQLVersion.v93 => ProviderName.PostgreSQL93, _ => ProviderName.PostgreSQL95, });
private static MappingSchema GetMappingSchema(PostgreSQLVersion version, MappingSchema providerSchema) { switch (version) { case PostgreSQLVersion.v92: return(new PostgreSQL92MappingSchema(providerSchema)); case PostgreSQLVersion.v93: return(new PostgreSQL93MappingSchema(providerSchema)); default: case PostgreSQLVersion.v95: return(new PostgreSQL95MappingSchema(providerSchema)); } }
private static string GetProviderName(PostgreSQLVersion version) { switch (version) { case PostgreSQLVersion.v92: return(ProviderName.PostgreSQL92); case PostgreSQLVersion.v93: return(ProviderName.PostgreSQL93); default: return(ProviderName.PostgreSQL95); } }
public static IDataProvider GetDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) { switch (version) { case PostgreSQLVersion.v95: return(_postgreSQLDataProvider95.Value); case PostgreSQLVersion.v93: return(_postgreSQLDataProvider93.Value); default: case PostgreSQLVersion.v92: return(_postgreSQLDataProvider92.Value); } }
protected PostgreSQLDataProvider(string name, MappingSchema mappingSchema, PostgreSQLVersion version = PostgreSQLVersion.v92) : base(name, mappingSchema) { Version = version; SqlProviderFlags.IsApplyJoinSupported = version != PostgreSQLVersion.v92; SqlProviderFlags.IsInsertOrUpdateSupported = version == PostgreSQLVersion.v95; SqlProviderFlags.IsUpdateSetTableAliasSupported = false; SqlProviderFlags.IsCommonTableExpressionsSupported = true; SetCharFieldToType <char>("bpchar", (r, i) => DataTools.GetChar(r, i)); SetCharField("bpchar", (r, i) => r.GetString(i).TrimEnd(' ')); _sqlOptimizer = new PostgreSQLSqlOptimizer(SqlProviderFlags); }
protected PostgreSQLDataProvider(string name, MappingSchema mappingSchema, PostgreSQLVersion version = PostgreSQLVersion.v92) : base(name, mappingSchema) { Version = version; if (version == PostgreSQLVersion.v93) { SqlProviderFlags.IsApplyJoinSupported = true; } SqlProviderFlags.IsInsertOrUpdateSupported = false; SqlProviderFlags.IsUpdateSetTableAliasSupported = false; SetCharField("bpchar", (r, i) => r.GetString(i).TrimEnd()); _sqlOptimizer = new PostgreSQLSqlOptimizer(SqlProviderFlags); }
public static DataConnection CreateDataConnection(IDbTransaction transaction, PostgreSQLVersion version = PostgreSQLVersion.v92) { return(new DataConnection(GetDataProvider(version), transaction)); }
public static DataConnection CreateDataConnection(string connectionString, PostgreSQLVersion version = PostgreSQLVersion.v92) { return(new DataConnection(GetDataProvider(version), connectionString)); }
public static IDataProvider GetDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) { return(version == PostgreSQLVersion.v92 ? _postgreSQLDataProvider : _postgreSQLDataProvider93); }
public PostgreSQLDataProvider(string providerName, PostgreSQLVersion version) : this(providerName, new PostgreSQLMappingSchema(), version) { }
/// <summary> /// Configure connection to use PostgreSQL Npgsql provider, specific dialect and connection string. /// </summary> /// <param name="builder">Instance of <see cref="LinqToDbConnectionOptionsBuilder"/>.</param> /// <param name="connectionString">PostgreSQL connection string.</param> /// <param name="dialect">POstgreSQL dialect support level.</param> /// <returns>The builder instance so calls can be chained.</returns> public static LinqToDbConnectionOptionsBuilder UsePostgreSQL(this LinqToDbConnectionOptionsBuilder builder, string connectionString, PostgreSQLVersion dialect) { return(builder.UseConnectionString(PostgreSQLTools.GetDataProvider(dialect), connectionString)); }
protected PostgreSQLDataProvider(PostgreSQLVersion version) : this(GetProviderName(version), version) { }
public PostgreSQLDataProvider(PostgreSQLVersion version = PostgreSQLVersion.v92) : this(GetProviderName(version), version) { }