Go to file
2022-08-30 11:34:13 +12:00
_config FIX Quote yample starting with % 2017-07-27 10:41:34 +01:00
.github/workflows MNT Use PHP 8.1 for manually created CI jobs 2022-08-18 11:01:28 +12:00
code API Update PostgreSQLQuery to use generators 2022-08-30 11:34:13 +12:00
docs API Increased support to 9.2 2019-09-03 15:41:23 +12:00
tests BUG Fix issues preventing a site from being migrated from SS3 to SS4 (#104) 2019-09-26 10:25:41 +12:00
_register_database.php BUG Fix installer for 4.0 (#58) 2016-10-26 14:24:00 +13:00
.editorconfig BUG Fix postgres + PDO not working 2017-11-20 09:07:32 +13:00
.gitattributes Added standard .gitattributes file 2016-01-16 19:34:48 +13:00
.upgrade.yml Upgrade code for new namespaces 2016-07-04 13:32:41 +12:00
CHANGELOG MINOR: changelog for the 0.9.2 release 2010-11-11 20:50:57 +00:00
code-of-conduct.md Added standard code of conduct file 2016-02-16 11:43:48 +13:00
composer.json DEP Update dependencies for CMS 5 2022-08-09 12:12:29 +12:00
LICENSE MINOR: Documentation update for the 0.9.1 release 2010-06-01 01:31:33 +00:00
phpcs.xml.dist MNT Travis shared config, use sminnee/phpunit 2020-12-02 15:41:59 +13:00
phpunit.xml.dist MNT Standardise modules 2022-08-02 17:55:18 +12:00
README.md Merge branch '2.3' into 2 2022-08-03 14:33:11 +12:00

PostgreSQL Module Module

CI Silverstripe supported module

Requirements

  • Silverstripe 4.0
  • PostgreSQL >=9.2
  • Note: PostgreSQL 10 has not been tested

Installation

composer require silverstripe/postgresql

Configuration

Environment file

Add the following settings to your .env file:

SS_DATABASE_CLASS=PostgreSQLDatabase
SS_DATABASE_USERNAME=
SS_DATABASE_PASSWORD=

See environment variables for more details. Note that a database will automatically be created via dev/build.

Through the installer

Open the installer by browsing to install.php, e.g. http://localhost/install.php Select PostgreSQL in the database list and enter your database details

Usage Overview

See docs/en for more information about configuring the module.

Known issues

All column and table names must be double-quoted. PostgreSQL automatically lower-cases columns, and your queries will fail if you don't.

Collations have known issues when installed on Alpine, MacOS X and BSD derivatives (see PostgreSQL FAQ). We do not support such installations, although they still may work correctly for you. As a workaround for PostgreSQL 10+ you could manually switch to ICU collations (e.g. und-x-icu). There are no known workarounds for PostgreSQL <10.

Ts_vector columns are not automatically detected by the built-in search filters. That means if you're doing a search through the CMS on a ModelAdmin object, it will use LIKE queries which are very slow. If you're writing your own front-end search system, you can specify the columns to use for search purposes, and you get the full benefits of T-Search.

If you are using unsupported modules, there may be instances of MySQL-specific SQL queries which will need to be made database-agnostic where possible.