News for hackers. Stuff that matters.
Re:In Praise of PostgreSQL by open-source-ux on Thursday August 05, 2021 @01:25PM (#28076791)
It's worth taking a look at the Firebird relational database.

Firebird can be used as an embedded DB or an client/server DB. It supports a wide variety of data types, is open source and cross-platform too.

It's a database that's rarely discussed here (a mystery why not). It certainly deserves wider attention.

Firebird features: https://firebirdsql.org/en/features/

Re:In Praise of PostgreSQL by kstrauser on Thursday August 05, 2021 @02:25PM (#28077573)
I worked with a company a long time ago that was using Interbase as the backend for a few websites. It had the interesting property that if you were using the command line client to connect to the server, and you used ^Z to pause the client, then the server would hang for all clients until you resumed it.

I know it’s completely unreasonable to judge Firebird today for Interbase 20 years ago, but admit that’s still the first thing that pops to my mind.

Do you feel Firebird offers something SQLite doesn’t?

Re:In Praise of PostgreSQL by open-source-ux on Thursday August 05, 2021 @03:30PM (#28078382)
Nothing beats the nimbleness, simplicity and speed of SQLite, but it is not a client/server database engine (although it is often used for that purpose due to its speed).

Firebird can be used as a proper client/server database engine. It supports static data types and stored procedures (unlike SQLite). It sits somewhere between SQLite and PostgreSQL. So it may be worth evaluating if you don't want the heft of PostgreSQL but need features missing from SQLite.

Re:In Praise of PostgreSQL by zimpenfish on Friday August 06, 2021 @03:40AM (#28084308)
> embedded DB

Sounds like it's not quite as embedded as SQLite? Seems like it just smushes the server into your app and spins that up from within. Also it only seems to be properly "embedded" on Windows (no macOS support and Linux is a bit weird?)

> Finally, you can't just ship libfbembed.so with your application and use it to connect to local databases. Under Linux, you always need a properly installed server, be it Classic or Super.