Class NpgsqlDatabaseInfo
Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases
(e.g. type definitions, capabilities...).
Inheritance
NpgsqlDatabaseInfo
Assembly: Npgsql.dll
Syntax
public abstract class NpgsqlDatabaseInfo
Constructors
NpgsqlDatabaseInfo(String, Int32, String, Version)
Declaration
protected NpgsqlDatabaseInfo(string host, int port, string databaseName, Version version)
Parameters
NpgsqlDatabaseInfo(String, Int32, String, Version, String)
Declaration
protected NpgsqlDatabaseInfo(string host, int port, string databaseName, Version version, string serverVersion)
Parameters
Properties
HasIntegerDateTimes
Reports whether the backend uses the newer integer timestamp representation.
Declaration
public virtual bool HasIntegerDateTimes { get; protected set; }
Property Value
Host
The hostname of IP address of the database.
Declaration
public string Host { get; }
Property Value
Name
Declaration
public string Name { get; }
Property Value
Port
The TCP port of the database.
Declaration
Property Value
ServerVersion
The PostgreSQL version string as returned by the server_version option. Populated during loading.
Declaration
public string ServerVersion { get; }
Property Value
SupportsAdvisoryLocks
Whether the backend supports advisory locks.
Declaration
public virtual bool SupportsAdvisoryLocks { get; }
Property Value
SupportsCloseAll
Whether the backend supports the CLOSE ALL statement.
Declaration
public virtual bool SupportsCloseAll { get; }
Property Value
SupportsDiscard
Whether the backend supports the DISCARD statement.
Declaration
public virtual bool SupportsDiscard { get; }
Property Value
SupportsDiscardSequences
Whether the backend supports the DISCARD SEQUENCES statement.
Declaration
public virtual bool SupportsDiscardSequences { get; }
Property Value
SupportsDiscardTemp
Whether the backend supports the DISCARD TEMP statement.
Declaration
public virtual bool SupportsDiscardTemp { get; }
Property Value
SupportsEnumTypes
Whether the backend supports enum types.
Declaration
public virtual bool SupportsEnumTypes { get; }
Property Value
SupportsMultirangeTypes
Whether the backend supports multirange types.
Declaration
public virtual bool SupportsMultirangeTypes { get; }
Property Value
SupportsRangeTypes
Whether the backend supports range types.
Declaration
public virtual bool SupportsRangeTypes { get; }
Property Value
SupportsTransactions
Whether the database supports transactions.
Declaration
public virtual bool SupportsTransactions { get; protected set; }
Property Value
SupportsUnlisten
Whether the backend supports the UNLISTEN statement.
Declaration
public virtual bool SupportsUnlisten { get; }
Property Value
Version
The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter.
Exposed via PostgreSqlVersion.
Declaration
public Version Version { get; }
Property Value
Methods
GetPostgresTypeByName(String)
Declaration
public PostgresType GetPostgresTypeByName(string pgName)
Parameters
Type |
Name |
Description |
String |
pgName |
|
Returns
GetTypes()
Provides all PostgreSQL types detected in this database.
Declaration
protected abstract IEnumerable<PostgresType> GetTypes()
Returns
ParseServerVersion(String)
Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version.
Declaration
protected static Version ParseServerVersion(string value)
Parameters
Type |
Name |
Description |
String |
value |
|
Returns
RegisterFactory(INpgsqlDatabaseInfoFactory)
Registers a new database info factory, which is used to load information about databases.
Declaration
public static void RegisterFactory(INpgsqlDatabaseInfoFactory factory)
Parameters
TryGetPostgresTypeByName(String, out PostgresType)
Declaration
public bool TryGetPostgresTypeByName(string pgName, out PostgresType pgType)
Parameters
Returns