Skip to main content

PostgreSQL

PostgreSQL is a supported data source for SQL queries.

How to Setup

To connect to a PostgreSQL data source you need to register a PostgreSQL credential. This requires:

  • the name of the credential (which you can choose);
  • the hostname, port, username, password database and schema name to connect to.
info

Note that you must define a RAW credential per remote schema; if you wish to access tables from two separate remote schemas, you must define two credentials in RAW, one per schema.

Table Mappings

The tables available in the schema of the remote database are available to query using the name of the credential as the "schema name".

For instance, if you register a credential and call it "db01", then you can query a table in it using e.g. "SELECT * FROM db01.table".

Limitations

  • PostgreSQL versions 12, 13, 14, 15, and the current version 16 are supported.
  • There is a known issue with processing PostgreSQL enumerations. Currently, these are not supported. Tables or views that use enumerations fail to be processed as well. In such cases, manual interventions are required in order to isolate the necessary tables and views without using enumerations.

Authorization and User Privileges

  • Remote Schema Authorization: When RAW connects to a remote database, it adheres to the existing authorization rules and user privileges of that database. This means RAW's access to data and schema elements is dictated by the permissions set in the remote database.
  • Local Schema Permissions Mapping: Once the remote schema is made available, RAW maps its permissions locally within its environment. This ensures that user access in RAW is reflective of the original database’s security constraints.
  • Dynamic Privileges Adjustment: As RAW synchronizes with the remote database, any changes in user privileges or authorization rules are dynamically updated locally. This feature maintains consistent security and access control, mirroring the remote database’s settings.