As the full releases list is quite long here are some direct links to the current versions.
You can use the filenames of these to get newer versions if you want.
All downloads: https://github.com/beekeeper-studio/beekeeper-studio/releases
Direct links as of (2023-10-05):
Open Beekeeper Studio, in the labs it’s under ‘CMP Development Tools’.
Use the drop down on the right-hand side to change the connection type to Postgres.
When you do this the GUI will update to show this.
Enter the following details:
Host: cmpstudb-01.cmp.uea.ac.uk
User: Your UEA username, without the @uea.ac.uk part.
Password: The password you received in the database account creation email.
Default Database: Your UEA username without the @uea.ac.uk part again.
Under 'Save Connection' you can give it a name, then click the 'Save' button at the bottom right.
This will add the database to the saved connections list on the left-hand side.
Double click the saved connection on the left to open it, or click on then use the ‘Connect’ button on the right-hand side.
This is the connected view, on the left are the tables in the database, and on the right is the query and results area.
Clicking 'Run' at the bottom of the query view will execute the whole window.
If you select text in the query window the 'Run' button will change to 'Run Selection', and you can just execute that section.
As Beekeeper is a generic database tool, rather than one only designed to talk to PostgreSQL, it does not know how to show things like indexes, functions, and triggers, as every database has its own way of doing this.
You can view this data by running some queries, and a selection are included below.
select * from pg_indexes where tablename='task';
SELECT event_object_schema AS table_schema, event_object_table AS table_name,
trigger_schema, trigger_name, string_agg(event_manipulation, ',') AS event, action_timing AS
activation, action_condition AS condition, action_statement AS definition FROM
information_schema.triggers GROUP BY 1,2,3,4,6,7,8 ORDER BY table_schema, table_name;
SELECT n.nspname AS schema, p.proname AS name, l.lanname AS language, CASE WHEN l.lanname ='internal'
THEN p.prosrc ELSE pg_get_functiondef(p.oid) END AS definition,
pg_get_function_arguments(p.oid) AS function_arguments, t.typname AS return_type FROM
pg_proc p LEFT JOIN pg_namespace n ON p.pronamespace = n.oid LEFT JOIN pg_language l ON
p.prolang = l.oid LEFT JOIN pg_type t ON t.oid = p.prorettype WHERE n.nspname NOT IN
('pg_catalog', 'information_schema') ORDER BY schema, name;