User database libraries and/or applications the Schemepersist stack should support
hga@xxxxxx
(12 Sep 2019 19:19 UTC)
|
Re: User database libraries and/or applications the Schemepersist stack should support
Peter Bex
(13 Sep 2019 12:23 UTC)
|
Re: User database libraries and/or applications the Schemepersist stack should support
Alaric Snell-Pym
(13 Sep 2019 17:03 UTC)
|
Re: User database libraries and/or applications the Schemepersist stack should support
John Cowan
(13 Sep 2019 17:16 UTC)
|
Re: User database libraries and/or applications the Schemepersist stack should support Lassi Kortela (13 Sep 2019 17:31 UTC)
|
On porting applications across databases
hga@xxxxxx
(13 Sep 2019 18:14 UTC)
|
Re: User database libraries and/or applications the Schemepersist stack should support Lassi Kortela 13 Sep 2019 17:31 UTC
> 1) Nicer syntax for SQL than strings > > Too complicated for me, that's for sure. It doesn't need to be part of the low-level interface, but I'd consider it a must as a higher-level library. Writing SQL by hand is painful and extremely bug-prone, and gets unwieldier really fast as application size grows and you deal with sub-selects, migrations and other real-world stuff. The quoting and lack of reflection/meta-programming are obvious pain points. And the fact that you can't compose queries and factor out common sub-queries flies against the face of decades of decomposing all programs into subroutines. > I'm not a big believer in porting > applications across databases anyway: it hardly ever happens. It's very nice for open source applications to be database-agnostic (at least among MySQL/Postgres/SQLite). It's a big relief when you can go with SQLite for local dev, and for deployment it's nice to be able to re-use whatever DB is already installed on the server. > Making > higher-level libraries work on any database is a more plausible goal, but > extremely hard. As with GUI toolkits, it's manageable if you cut out all inessential features. I'd still love to have a close-to-ANSI SQL DSL that handles all the portability hacks behind the scenes.