Hacker News new | ask | show | jobs
by temp667 2030 days ago
Why not do this for Oracle? I've not found SQL Server to be too bad from the crazy Oracle stuff (light experience only - maybe bigger players have it worse?).
5 comments

Oracle has peculiarities that you won't see in most other databases, which may make this a bit harder -- including such things as an oddball set of date/time types ("date" includes time to seconds), and treating zero length strings as SQL nulls --

  '' is null
evaluates to true in Oracle. It also has features like "fast refresh" on materialized views which might be tricky to emulate on other db engines. Nothing's impossible, but it's certainly more of a challenge.
Oh, immediate refresh of materialized views...its my biggest wish for postgres to have a seriously robust implementation.

I have some pretty complicated materialized views which the devs said would not work with their first implementation.

>> '' is null

This was a major pain for us especially in our java data-access layer.

It already exists: https://www.enterprisedb.com/products/edb-postgres-advanced-...

I'm not sure exactly how compatible - I've never had to use it - but EDB has been around for a while and is commercially backed. Plus they employ some core PostgreSQL contributors.

As a DBA, T-SQL is much more standard then PL/SQL. Its probably step 1 of the plan, with step 2 being Oracle.
That's completely subjective and depends on your familiarity.
Isn't SQL/PSM the standard? And PL/SQL older than them all? (Hence Postgres providing PL/pgSQL)
About 10 years back my company hired consultants, spent close to 6 months translating SQL queries/stored procs to be Oracle. The goal was to support both MSSQL Server & Oracle for the on-premise product. It was quite costly undertaking. Then few years later they just abandoned Oracle because of maintenance costs.

I wonder if anyone starting out today chooses Oracle as their relational database.

Yes, large organizations that aren't tech oriented will use Oracle every time over other solutions.

It's not a great solution for tech companies, but they do say no one ever got fired for choosing Oracle or IBM or whatever, mainly because you can always pay them to fix your shit and there will always be someone supporting those products.

Oracle is very powerful. As a developer I found it easy to work with. But the cost to run in production is eye-watering. IDK how their licensing works today but in the past it was free to use for evaluation or for developing a prototype. Once you were "gaining business value" i.e. using it even if only internally to develop a real product, you were supposed to be paying for it.
Oracle XE is free for production use, but it only makes sense if

a) you are already familiar with Oracle, and

b) you have a very small data set:

“Oracle Database 18c XE supports up to:

3 Pluggable Databases

2 CPUs for foreground processes

2GB of RAM (SGA and PGA combined)

12GB of user data on disk (irrespective of compression factor)”

> I wonder if anyone starting out today chooses Oracle as their relational database.

Your boss does.

I bet they are working on it.