PostgresV3 is a pure Smalltalk
implementation of the PostgreSQL v3 wire protocol. I've modified
PostgresV3-Core to do parameter binding and added PostgresV3-DBAPI, a very
simple client API.
In PostgresV3-DBAPI, there are a number of examples in PG3ExampleClient.
These examples require a PostgreSQL server loaded with the Sakila database.
To set that up, firstly, download the
Sakila database files.
Place the PostgreSQL files in ~/data, say.
The quickest way to get PostgreSQL up and running is by Docker. Here's my
docker-compose file that uses the official Postgres-11 image. Data is kept
in a separate volume 'pgdata'.
Bring up PostgreSQL, create roles, load the Sakila data, assign
In a fresh Squeak image - I'm using 5.2 - evaluate in a workspace:
In a fresh Pharo image - I'm using the latest 7.0 pre-release - evaluate in
As this is a pure Smalltalk implementation, it should also work in earlier
versions of Squeak and Pharo.