Looking at this long list of Rust ORMs. I do not understand what the fuck a Rust ORM is supposed to be. Rust claims that it is not an object-oriented language.
I don't actually *agree* with the claim Rust is not object-oriented— I think Rust is object oriented, it's just not class-based— but it is the case that class-based OO is what people usually treat "OO" as meaning and "ORM" is bound up specifically with the idea of class-based OO. Actually, traits have always looked to me more like an RDBMS than class-inheritance OO ever did, so a like, TRM (Trait-Relational-Mapping) would rule, but I don't know if that's what these ORMs are.
Why I'm thinking about this: I want to write a Rust app that uses SQLite, but I want to later have the option of switching to Postgres or MariaDB/MySQL with minimal friction. I started cracking in to "database agnostic" crate SQLx this morning, but quickly realized that it's something like Perl DBI and it's really just an agnostic layer for *submitting* SQL queries; the queries themselves are still potentially engine-specific.
(I was making a sort of half a joke here, because SQLAlchemy as a library has a big branding problem, because it has 4 layers that are all annoyingly conflated in the same package, and the one that most people mean when they say "SQLAlchemy" standalone is "SQLAlchemy ORM")