Class AdbNpgsqlDataSourceInformationService
Provides information about a PostgreSQL® data source behind a connection, such as what character to use for quoting, how to specify parameter markers etc. The information is mainly taken from the "DataSourceInformation" schema collection, and is used to write provider-independent database code.
This class is used when creating AdbProvider instances, use Get() to retrieve the required delegate.
This class can be inherited to overwrite some values, and used to create a custom Npgsql provider,
see AdbNpgsqlProvider and Information for more details.
This class is immutable. This avoids threading issues, since an instance is often accessed by multiple threads. Any user custom provider services should also be immutable for the same reason.
Implements
Inherited Members
Namespace: actionETL.Adb.NpgsqlExternal
Assembly: actionETL.dll
Syntax
public class AdbNpgsqlDataSourceInformationService : AdbGenericDataSourceInformationService, IAdbDataSourceInformationService
Constructors
AdbNpgsqlDataSourceInformationService(IAdbConnection)
Initializes a new instance of the AdbNpgsqlDataSourceInformationService class, which provides information about a PostgreSQL® data source behind a connection, such as what character to use for quoting, how to specify parameter markers etc.
The provider uses ANSI double quotes (") to quote and parse identifiers,
i.e. with IdentifierQuotePrefix
and IdentifierQuoteSuffix set to
".
Declaration
protected AdbNpgsqlDataSourceInformationService(IAdbConnection adbConnection)
Parameters
| Type | Name | Description |
|---|---|---|
| IAdbConnection | adbConnection | An Adb database connection. |
Exceptions
| Type | Condition |
|---|---|
| ArgumentNullException |
|
| InvalidOperationException | Cannot open a connection without specifying a data source or server. |
Methods
Get()
Gets a function that returns a new instance of AdbNpgsqlDataSourceInformationService (with default settings) on each invocation, which is used when instantiating a new AdbProvider for accessing a PostgreSQL® data source.
The instance uses ANSI double quotes (") to quote and parse identifiers,
i.e. with IdentifierQuotePrefix
and IdentifierQuoteSuffix set to
".
Declaration
public static Func<IAdbConnection, IAdbDataSourceInformationService> Get()
Returns
| Type | Description |
|---|---|
| Func<IAdbConnection, IAdbDataSourceInformationService> |