Class PostgresType
- Namespace
- Npgsql.PostgresTypes
- Assembly
- Npgsql.dll
Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. This class is abstract, see derived classes for concrete types of PostgreSQL types.
public abstract class PostgresType
- Inheritance
-
PostgresType
- Derived
- Inherited Members
Remarks
Instances of this class are shared between connections to the same databases. For more info about what this class and its subclasses represent, see https://www.postgresql.org/docs/current/static/catalog-pg-type.html.
Constructors
PostgresType(string, string, string, uint)
Constructs a representation of a PostgreSQL data type.
protected PostgresType(string ns, string name, string internalName, uint oid)
Parameters
nsstringThe data type's namespace (or schema).
namestringThe data type's name.
internalNamestringThe data type's internal name (e.g. _int4 for integer[]).
oiduintThe data type's OID.
PostgresType(string, string, uint)
Constructs a representation of a PostgreSQL data type.
protected PostgresType(string ns, string name, uint oid)
Parameters
nsstringThe data type's namespace (or schema).
namestringThe data type's name.
oiduintThe data type's OID.
Properties
Array
If a PostgreSQL array type exists for this type, it will be referenced here. Otherwise null.
public PostgresArrayType Array { get; }
Property Value
DisplayName
A display name for this backend type, including the namespace unless it is pg_catalog (the namespace for all built-in types).
public string DisplayName { get; }
Property Value
FullName
The full name of the backend type, including its namespace.
public string FullName { get; }
Property Value
InternalName
The data type's internal PostgreSQL name (e.g. integer[] not _int4). See Name for a more user-friendly name.
public string InternalName { get; }
Property Value
Name
The data type's name.
public string Name { get; }
Property Value
Remarks
Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal PostgreSQL name as it is in pg_type (_int4). See InternalName for the latter.
Namespace
The data type's namespace (or schema).
public string Namespace { get; }
Property Value
OID
The data type's OID - a unique id identifying the data type in a given database (in pg_type).
public uint OID { get; }
Property Value
Range
If a PostgreSQL range type exists for this type, it will be referenced here. Otherwise null.
public PostgresRangeType Range { get; }
Property Value
Methods
ToString()
Returns a string that represents the current object.
public override string ToString()